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

Define various classes of interrupts, Q. Define Various classes of Interrup...

Q. Define Various classes of Interrupts? Figure below gives list of some common interrupts and events which causes occurrence of those interrupts. Figure: Various clas

External program components, How does the system handle roll areas for exte...

How does the system handle roll areas for external program components? Transactions run in their own roll areas. Reports run in their own roll areas. Dialog modules run

Differentiate between static and dynamic step loops, Differentiate between ...

Differentiate between static and dynamic step loops. Step loops fall into two classes: Static and Dynamic.  Static step loops have a fixed size that cannot be changed at runti

Show the properties of text box, Q. Show the properties of Text Box? Th...

Q. Show the properties of Text Box? The tag is used to specify where user input is expected. It has several attributes, of which TYPE attribute is used to specify th

Mini project, give proper code for any kind of project in oop c++

give proper code for any kind of project in oop c++

Organisational inertia - obstacle to information system, Organisational Ine...

Organisational Inertia - Obstacle To Information System This is most easily understood as problems of change and culture. Like any change process technology led change will be

How to clear a datagrid on a button click, How to clear a datagrid on a but...

How to clear a datagrid on a button click? You require to Clear the DataSource of the dataGrid. So try this: dataSet1.Clear(); dataGrid1.DataSource = dataSet1.TableNam

Low level language program, The commands (instructions) are native instruct...

The commands (instructions) are native instructions to the 68HC11 and therefore it is termed a low level language program. Examining the program the instructions (mnemonics) they a

Explain call by value and call by reference, Call by value and Call by refe...

Call by value and Call by reference Call by value means sending the values of the arguments- The value of each of the original arguments in the calling function is copied in

Define the arithmetic micro-operations, Q. Define the Arithmetic Micro-oper...

Q. Define the Arithmetic Micro-operations? These micro-operations execute simple arithmetic operations on numeric data stored in registers. The fundamental arithmetic micro-ope

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