A basic linux shell designed and developed using standard C libraries and linux system calls such as fork(), execl(), pthread_create(), system()
Implemented 3 internal commands in addition to 5 external commands along with some command line options for each. Some corner cases have also been handled for each of them.
Run the following commands on the terminal
# clone this repository
git clone https://github.com/mohitg66/Basic-Linux-Shell.git
cd Basic-Linux-Shell
# compile the source
make- For Process based execution: Simply run the commands, for example
ls -a
- For Thread based execution: Add
&tbefore the command, for example
&t ls -a
cd
cd -L
cd ..
echo
echo -E
echo -n
pwd
pwd -L
pwd -P
ls
ls -a
ls -p
cat
cat -n
cat -e
date
date -R
date -I
date -a
rm
rm -i
rm -f
rm -n
mkdir
mkdir -v
mkdir -p
- command line options other than the ones mentioned are invalid
echono use of $lsworks only for the current working directory, no path to be givencatcan’t read multiple files at oncedatethe shell uses the system’s date which may not be correctly syncedrmcannot delete multiple files at once
Mohit Gupta
- GitHub: mohitg66
- Email: mohit21339@iiitd.ac.in

