This is a custom shell program, designed to function similarly to popular Unix shells like Bourne Shell (bash). It parses user input and creates forked child processes to execute commands.
- Process creation and management using
fork() - Support for basic shell commands (
ls,cd,rmdir,mkdir,rm,touch,cp,history,exit,quit) - Command history with recall (up to 15 commands), including PID tracking.
- Continuous command execution until the user exits
- GCC (GNU Compiler Collection)
- Unix-like operating system
makeTo start the shell, run the compiled binary:
./mshOnce the shell is running, you can enter commands as you would in a regular Unix shell. Here are some examples:
history # List command history
history -p # List command history PIDs
!n # Re-run the nth most recent command
exit/quit # Exit the shell
//Run any regular unix command
ls -l # List files in the current directory
cd /path/to/dir # Change directory
mkdir mydir # Create a directory
rm myfile.txt # Remove a file