Question: Part 1- Build a Shell that can execute a Unix Command Step 1- Modify the convertToC You will be using execv that requires a char**

Part 1- Build a Shell that can execute a Unix Command

Step 1- Modify the convertToC

You will be using execv that requires a char** as an argument. The catch is that the char ** has to be NULL terminated

Please do the following

1) allocate an extra "word" for NULL (Hint: tokenCount+1)

2) store the value of NULL into the extra "word"

Step 2- Modify the processCommand

You will be emulating a shell. First, the shell checks for specific commands ("shutdown", "lo", etc). If it does not recognize those commands then, a fork occurs and the child will execute the command as typed.

The algorithm to implement is as follows (Hint: add code inside the else):

1) fork to create a child and parent

2) the child will do the following:

Call the converToC function and capture the return into a char** variable

Call execvp sending it two arguments: the first element (or word) of the char** variable, and the entire array

Print an error message

exit

3) the parent will do the following:

wait for the child

return 1

4) don't forget to handle the error case of the fork

******************************************************************************************************

code is below...

******************************************************************************************************

Part 1- Build a Shell that can execute a Unix Command Step

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!