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

Elaborate protected mode memory addressing in brief, Elaborate protected mo...

Elaborate protected mode memory addressing in brief. Protected mode interrupt: In protected mode, interrupts have exactly the same assignments as in real mode though int

Manipulate the presentation and attributes interactive list, How can you m...

How can you manipulate the presentation and attributes of interactive lists? ---Scrolling by Interactive Lists. ---Setting the Cursor from within the Program. ---Changing

Differentiate between sequential and combinational circuits, Problem 1 ...

Problem 1 Prove that :- x(x + y) = x by using identities 2 Write a short note on Analog to Digital Converter (ADC) 3 Differentiate between sequential and combinational ci

Differentiate between exception and validation testing, Differentiate betwe...

Differentiate between exception and validation testing. - Validation testing is done to test the software in conformance to the needs specified. It aims to demonstrate that the

What is enctype, ENCTYPE="application/x-www-form-urlencoded" and in its pl...

ENCTYPE="application/x-www-form-urlencoded" and in its place use ENCTYPE="text/plain". The subsequent illustration displays a general form which includes some of the commo

What is multiple interrupt lines, Q. What is Multiple Interrupt Lines? ...

Q. What is Multiple Interrupt Lines? Multiple Interrupt Lines: Simplest solution to problems above is to provide multiple interrupt lines that will result in immediate recognit

What is the difference among a canvas and a scroll panel, Canvas is a compo...

Canvas is a component. ScrollPanel is a container. Canvas is a rectangular area where the application can draw or trap input events. ScrollPane executes horizontal and vertical scr

Scoreboards- constrained-random verification methodology, Scoreboards- Cons...

Scoreboards- Constrained-Random Verification Methodology Scoreboards are used to verify that data has successfully reached its destination whereas monitors snoop the interfaces

Test, what persistance shouold i use

what persistance shouold i use

Lexical analyser, The aim of this project is for you to construct a fully w...

The aim of this project is for you to construct a fully working compiler for a small simple programming language, SPL. The compiler will read in SPL source code and produce ANSI C

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