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

What are the facilities of a debug monitor, What are the facilities of a de...

What are the facilities of a debug monitor? The facilities of a debug monitor are given below: a. Setting breakpoints into the program b. Initiating a debug conversation

Explain communications and synchronization, Communications Parallel t...

Communications Parallel tasks normally have to exchange data. There are various manners in which this can be achieved like over a network or through a shared memory bus. The

What are the different pieces of the virtual address, What are the differen...

What are the different pieces of the virtual address in a segmented paging? The various pieces of virtual address in a segmented paging are as demonstrated below:

Cross bar-various interconnection networks-fully connected, Cross Bar ...

Cross Bar The crossbar network is the easiest interconnection network. It has a two dimensional grid of switches.  It is a non-blocking network and give connectivity among inp

Message passing programming, Message passing is possible the most widely us...

Message passing is possible the most widely used parallel programming paradigm these days. It is the most portable, natural and efficient scheme for distributed memory systems. It

How do you find out if a linked-list has an end, By 2 pointers you can find...

By 2 pointers you can find it. One of them goes 2 nodes each time. The second one goes at 1 node each time. If there is a cycle, the one that goes 2 nodes every time will eventuall

Explain about hamming error correcting code, Q. Explain about Hamming error...

Q. Explain about Hamming error correcting code? Richard Hamming at Bell Laboratories worked out this code. We will only introduce this code with help of an illustration for 4 b

How to calculate colour depth, Q. How to calculate Colour Depth? Colour...

Q. How to calculate Colour Depth? Colour Depth (or number of Colour Planes) is number of bits assigned to every pixel to code colour information in it. These are also known as

Branch (control) hazards in computer architecture, Branch (control) hazards...

Branch (control) hazards in computer architecture : Branching hazards (also called control hazards) take place when the processor is told to branch -for example, if a defin

Implement or, Q. Write a program to implement OR, NOR, AND and NAND gates ...

Q. Write a program to implement OR, NOR, AND and NAND gates using and without using Bit wise operator. The menu should be as follows: I. Using Bit Wise operator II. Withou

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