https://github.com/yashbhutwala/yash-shell
My implementation of a Unix shell from CSCI 315: Operating Systems
https://github.com/yashbhutwala/yash-shell
bucknell c operating-system unix-shell
Last synced: 6 months ago
JSON representation
My implementation of a Unix shell from CSCI 315: Operating Systems
- Host: GitHub
- URL: https://github.com/yashbhutwala/yash-shell
- Owner: yashbhutwala
- Created: 2017-04-21T22:52:52.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-04-22T00:26:35.000Z (almost 9 years ago)
- Last Synced: 2024-12-25T15:42:02.499Z (about 1 year ago)
- Topics: bucknell, c, operating-system, unix-shell
- Language: C
- Homepage:
- Size: 23.4 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
* * *
# Yash's Shell
This is a basic, lightweight implementation of a UNIX shell.
To compile and run the shell, first make sure to create `./bin` and `./obj` directories and then run:
```bash
>> make clean
>> make
>> ./bin/yashShell
```
In addition to typical shell commands, features include:
- When the user presses the “enter” key twice in a row, the shell displays the list of files in the current working directory.
- `>> touch hello.c; touch hello2.c; rm -rf hello.c`: Reads multiple commands separated by a semicolon character.
- `>> history` : Prints the previous HIST_LEN number of commands.
- `>> time` : Prints the current date and time in an human readable form.
- `>> cd` : Changes the directory.
- `>> ps -ef | grep root`: Piping.
- `>> exit` : Exits the yashShell.
This was built as part of my CS 315: Operating Systems course. Links to the original assignment are listed here:
-
-