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

Make a generalized program that accepts a number and base, Q. Make a gener...

Q. Make a generalized program that accepts a number & base, convert it into the given base. Perform necessary validations.

What is mmu, What is MMU? MMU is the Memory Management Unit. It is a sp...

What is MMU? MMU is the Memory Management Unit. It is a special memory control circuit used for executing the mapping of the virtual address space onto the physical memory.

Variable or compound expression - unification algorithm, Variable or compou...

Variable or compound expression - Unification algorithm: Here some things to note regarding this method are:  (i) There if really trying to match a constant to a different

Determine the term - artisan software and bridgepoint, Determine the term ...

Determine the term - ARTiSAN Software and  BridgePoint ARTiSAN Software : This provides a variety of UML based CASE tools, which also includes a real time modeling tool.

How to use an assembler, Q. How to use an Assembler? Symbolic instructi...

Q. How to use an Assembler? Symbolic instructions which we code in assembly language is called as- Source program. An assembler program translates source program in machine

Write an awk program - unix , Write an AWK program which takes the followin...

Write an AWK program which takes the following input file and processes it. $cat data.txt John Do 111-1111 English 90 Maths 80 Alice Do 222-2222 English 90 Maths 90 Chemistry 93

Show packing and unpacking data, Q. Show Packing and Unpacking Data? P...

Q. Show Packing and Unpacking Data? Packing and Unpacking Data  pvm_packs - Pack active message buffer with arrays of prescribed data type: int info = pvm_pac

What will be the result of adding hexadecimal A6 to 3A, The result of addin...

The result of adding hexadecimal number A6 to 3A is ? Ans. The result will be E0.

Convert ascii code to its bcd equivalent, Convert ASCII code to its BCD equ...

Convert ASCII code to its BCD equivalent. This can be achieved by simply replacing bits in upper four bits of byte by four zeros. For illustration the ASCII '1' is 32h = 0010B. By

What are the pros and cons of on-line documentation, Question 1: You wa...

Question 1: You want to perform the task of setting an alarm on your mobile phone. You can assume that the alarm option is accessible from the main menu of your phone. (a) P

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