The Shell or Command Line Interpreter is the fundamental User interface to an Operating System. write a simple shell - myshell - that has the following properties: Supported commands: The shell must support the following internal commands: cd- change the current default directory to. If theargument is not present, report the current directory. If the directory does not exist an appropriate error should be reported. This command should also change the PWD environment variable. clr - clear the screen. dir- list the contents of directory environ - list all the environment strings echo - display on the display followed by a new line (multiple spaces/tabs may be reduced to a single space) help - display the user manual using the more filter pause - pause operation of the shell until 'Enter' is pressed quit - quit the shell The shell environment should contain shell=/myshell where/myshell is the full path for the shell executable (not a hardwired path back to your directory, but the one from which it was executed)
The Shell or Command Line Interpreter is the fundamental User interface to an
Supported commands: The shell must support the following internal commands:
- cd- change the current default directory to. If theargument is not present, report the current directory. If the directory does not exist an appropriate error should be reported. This command should also change the PWD environment variable.
- clr - clear the screen.
- dir- list the contents of directory
- environ - list all the environment strings
- echo - display on the display followed by a new line (multiple spaces/tabs may be reduced to a single space)
- help - display the user manual using the more filter
- pause - pause operation of the shell until 'Enter' is pressed
- quit - quit the shell
- The shell environment should contain shell=/myshell where/myshell is the full path for the shell executable (not a hardwired path back to your directory, but the one from which it was executed)
All other command line input is interpreted as program invocation which should be done by the shell forking and execing the programs as its own child processes. The programs should be executed with an environment that contains the entry: parent=/myshell where/myshell is as described in the last bullet point. above.
Batch Mode: The shell must be able to take its command line input from a file. i.e. if the shell is invoked with a command line argument:
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 5 images