Question: #define MAX_LINE 80 // The maximum length command /** * @brief parse out the command and arguments from the input command separated by spaces *

#define MAX_LINE 80 // The maximum length command

/** * @brief parse out the command and arguments from the input command separated by spaces * * @param command * @param args * @return int */ int parse_command(char command[], char *args[]) { // TODO: implement this function }

// TODO: Add additional functions if you need

/** * @brief The main function of a simple UNIX Shell. You may add additional functions in this file for your implementation * @param argc The number of arguments * @param argv The array of arguments * @return The exit status of the program */ int main(int argc, char *argv[]) { char command[MAX_LINE]; // the command that was entered char *args[MAX_LINE / 2 + 1]; // parsed out command line arguments int should_run = 1; /* flag to determine when to exit program */

// TODO: Add additional variables for the implementation.

while (should_run) { printf("osh>"); fflush(stdout); // Read the input command fgets(command, MAX_LINE, stdin); // Parse the input command int num_args = parse_command(command, args);

// TODO: Add your code for the implementation /** * After reading user input, the steps are: * (1) fork a child process using fork() * (2) the child process will invoke execvp() * (3) parent will invoke wait() unless command included & */ } return 0; }

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!