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

Explain the ccitt hierarchical structure of switching, Explain the CCITT hi...

Explain the CCITT hierarchical structure of switching using block schematic. Hierarchical network are able of handing heavy traffic where needed, and at similar time use mini

Write the program to use arrays, In class SlotCollection, remove the fields...

In class SlotCollection, remove the fields slot1, slot2, slot3 and slot4 and replace them by an array of slots. Modify the rest of the program to work using this array. There is

Instruction set, Instruction set: The architecture gives instructions for m...

Instruction set: The architecture gives instructions for multimedia operations and floating point operations. The Itanium supports various bundle mappings to allow for more inst

What happens if acknowledge() is called within a transaction, As per the JM...

As per the JMS specification, when you are in a transaction, the acknowledge Mode is ignored. If acknowledge() is known as within a transaction, it is ignored.

Combining goals and design principles, The Set Book assignment should enabl...

The Set Book assignment should enable you to begin talking about the usability of interactive products in terms of a variety of parameters. Instead of simply saying 'nice cell phon

Specifying research problems, Specifying Research Problems: In our age...

Specifying Research Problems: In our agent terminology or in technique history, a problem to be solved is a specific and justified manner where the agent has starts with the b

Microprocesseor, In8085 are of the following statements is not true.A) Co-p...

In8085 are of the following statements is not true.A) Co-processor is interfaced in max mode. B) Co-processor is interfaced in MIN mode C )Co-processor is interfaced in max/min mod

Define wilkes control unit, Q. Define Wilkes Control Unit? Prof. M. V. ...

Q. Define Wilkes Control Unit? Prof. M. V. Wilkes of the Cambridge University Mathematical Laboratory invented the term microprogramming in 1951. He offered a systematic altern

Explain FIFO page replacement algorithm, Explain FIFO Page replacement algo...

Explain FIFO Page replacement algorithm. FIFO policy: This policy only removes pages in the order they entered in the main memory. By using this policy we simply eliminate a

Define the bandwidth of a monitor, Q. Define the Bandwidth of a monitor? ...

Q. Define the Bandwidth of a monitor? Bandwidth is the amount of signal the monitor can handle and it is rated in MHz .This is the most usually quoted specification of a monito

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