Write a linux terminal shell, Computer Engineering

Assignment Help:

Write a Linux terminal shell. Your shell should act similar to bash. At a high level, your shell should accomplish the following:

1. Print a prompt when waiting for input from the user.

2. Continuously accept commands from the user and execute them until the user exits the shell.

_ If the command the user enters does not exist on the system, an error message should be displayed.

3. Accept the change directory command, and appropriately change the current working directory.

_ If the directory the user enters does not exist, an error message should be displayed.

4. Your shell must keep a history of the last 10 commands executed. The user should be able to cycle through the history using the up and down arrow keys.

5. Your shell must accept the pipe "|" operator. This will execute two commands, where the first process will output to the input of the second process.

6. Accept an exit command that will close your shell properly.

7. Ignore characters such as the left arrow and right arrow.

8. Properly handle when the user types delete or backspace keys.


Related Discussions:- Write a linux terminal shell

Five design principles, Visibility. Controls should be clearly visible, so ...

Visibility. Controls should be clearly visible, so users can see the controls that are available to them. Visual feedback should also be clearly visible, so users can understand wh

How putchar function is used within a c program, How putchar function is us...

How putchar function is used within a C Program ? The following program reads each character in the first line of input entered at the terminal's keyboard. It uses putchar to d

Show smtp and electronic mail, One of the very useful things about Internet...

One of the very useful things about Internet is that it enables almost instantly exchange of electronic message (e-mail) across the worlds. E-mail is a standard as well as popular

Efficiency of vector processing over scalar processing, Efficiency of Vecto...

Efficiency of Vector Processing over Scalar Processing As we know a serial computer processes single scalar operands at a time. So if we have to process a vector of length 'n'

Canonical genetic algorithm - artificial intelligence, Canonical Genetic Al...

Canonical Genetic Algorithm: In such a scenario with all search techniques there one of the first questions to ask along with GAs is how to define a search space that is actua

Explain passing parameters in general memory, Q. Explain Passing Parameters...

Q. Explain Passing Parameters in General Memory? The parameters can be passed in the memory too. In such a technique name of the memory location is used as a parameter. The res

The source to the current version, How do I update an existing copy of the ...

How do I update an existing copy of the source to the current version? Ans) As the common code changes, you might need to update your copy to have the lastest version. To do tha

Logical difference among move a to b and compute b = a, What is the  logic...

What is the  logical difference among Move A TO B and COMPUTE B = A ? Ans) In case of Move A TO B it will move whatever the value of a in to b. It mean it will move nume

Computer representation for the negative integer, Everything stored on a co...

Everything stored on a computer can be represented as a string of bits. However, different types of data (for example, characters and numbers) may be represented by the same string

Program for interchanging the values of two memory locations, Q. Program fo...

Q. Program for interchanging the values of two Memory locations? Program for interchanging the values of two Memory locations  ; input: Two memory variables of same size:

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd