From dd323368d025dd87f6dba07bfd6388805984496c Mon Sep 17 00:00:00 2001 From: cyp0633 Date: Tue, 24 May 2022 00:01:03 +0800 Subject: [PATCH] Shell Lab: trace02 --- shlab/tsh.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/shlab/tsh.c b/shlab/tsh.c index a5344ef..ee14e94 100644 --- a/shlab/tsh.c +++ b/shlab/tsh.c @@ -177,7 +177,7 @@ void eval(char *cmdline) return; } // run external command - if (!builtin_cmd(argv)) + if (!builtin_cmd(argv)) // built-in command is done in `builtin_cmd` { if ((pid = fork()) == 0) // this is child { @@ -267,6 +267,10 @@ int parseline(const char *cmdline, char **argv) */ int builtin_cmd(char **argv) { + if (strcmp(argv[0], "quit") == 0) // process quit command + { + exit(0); + } return 0; /* not a builtin command */ }