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 is incidence matrix, Incidence Matrix: - This is the incidence matrix ...

Incidence Matrix: - This is the incidence matrix for an undirected group. For directed graphs, the vertex from where an edge is originating will have +1 and the vertex where the ed

increase the number of rows or columns in a worksheet, How can I increase ...

How can I increase the number of rows or columns in a worksheet? Ans) In Excel, each workbook has 255 columns and 65,526 rows. These values are fixed and cannot be changed. If

How to detect a sequence of 1101, Use 4 D-bascules connected in serial all ...

Use 4 D-bascules connected in serial all synchronized with the similar CLK. Then connect all 4 outputs, & 2nd output must reverse, of the D-bascule to an AND logic. The output of t

Why we need the need of parallel computation, THE NEED OF PARALLEL COMPUTAT...

THE NEED OF PARALLEL COMPUTATION   With the growth of computer science, computational pace of the processors has also increased many a times. Though, there are definite constr

What are prefetch instructions, What are prefetch instructions? Prefetc...

What are prefetch instructions? Prefetch instructions are those instructions which can be inserted into a program either by the programmer or by the compiler.

What is a spool request, What is a Spool request? Spool requests are f...

What is a Spool request? Spool requests are formed during dialog or background processing and placed in the spool database with information about the printer and print format.

How do you classify the neutrons, Q. How do you classify the neutrons in te...

Q. How do you classify the neutrons in terms of its kinetic energy? Neutrons are classified as-per to their kinetic energy as (a) Slow neutrons as well as (b) fast neutrons.

8259 PIC, plz expalain interfacing of 8259 with 8085 step wise

plz expalain interfacing of 8259 with 8085 step wise

Explain dns, DNS is The horizontal naming system.

DNS is The horizontal naming system.

What is clearquest, Rational ClearQuest is a change-request management tool...

Rational ClearQuest is a change-request management tool that tracks and handles defects and change requests all through the development process. With ClearQuest, you can manage eac

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