I need someone who know what to do in C Language!!
I need a basic Linux shell in C!! The shell must explicitly recognize two commands: exit and cd.
Create a basic Linux shell in C using the algorithm described in class. The shell must explicitly recognize two commands: exit and cd.
1) The exit command will cause the shell to end.
2) The cd command will change the current directory. The directory will be a command-line argument. For example:
will change the current directory to workplace/lab1/src. (Unless an absolute path is specified, the path given is relative to the current directory…you don’t have to do anything about this, I’m just letting you know.) Your shell will change the directory using the chdir() function.
3) Your shell will assume all other commands entered are programs the user wishes to run. In this case, the shell creates a child process and uses the execvp() function to cause the child to execute the specified program with the given command-line arguments. The parent process (the shell) must wait until the child process terminates. Be careful here: the execvp() function will fail if provided invalid parameters. In case of failure, the child process should print an error message and terminate.
* Use the function fgets() to read input.
* You must build the args array (the second parameter to execvp()) yourself. Do not use a function to do this for you.
* Certain features you are used to using in a Linux shell will not work in your shell. Examples include using Tab to auto-complete a command or the Up Arrow to repeat the previous command. This is fine. Your shell doesn’t have to do all that.