Break keys, Computer Engineering

Assignment Help:

Like a normal read, your input should break on the new line character "\n"  and also on the up and down arrow keys. You will process the input made by the user when he/she enters new line.

History

Your shell must keep a history of the last 10 commands executed. When the user presses the up key the current input should show the last command executed (as the user typed it). So if the user executed the "ls" command, then pressed the up key, then pressed enter, the ls command should be executed. When the user presses up multiple times, you should replace the input with the next previous command. Until you reach the end of the history list (max of 10). If the user presses up and reaches the end of the list, the next time up is pressed nothing should happen. Conversely when the down arrow is pressed you should cycle through the history in the other direction. So if

the user presses down without pressing up, nothing should happen. That is because you will be at the bottom of the list. After a command is executed it should be added to the list and the index of where the user is in the history should be reset. This functionality should be similar to how the Bash shell works.


Related Discussions:- Break keys

Inheritance, what is Ambiguity in single inheritance

what is Ambiguity in single inheritance

Illustrate the cache memory operation, Q. Illustrate the Cache Memory Opera...

Q. Illustrate the Cache Memory Operation? It comprises a copy of a part of main memory contents. When a program is running and CPU tries to read a word of memory (instruction o

Explain sequential sharing, Explain Sequential sharing. Sequential s...

Explain Sequential sharing. Sequential sharing: In this technique of sharing, a file can be shared through only one program at a time, it is file accesses by P1 and P2 are

Data alignment in arrays, Q. Data Alignment in Arrays? Arrays are align...

Q. Data Alignment in Arrays? Arrays are aligned to templates by ALIGN directive. ALIGN directive is used to align elements of various arrays with one another denoting that they

In a for loop, In a for loop, if the condition is missing, then, It is s...

In a for loop, if the condition is missing, then, It is supposed to be present and taken to be true.

What is system prompt, Q. What is System Prompt? On loading (or Switchi...

Q. What is System Prompt? On loading (or Switching to) DOS, the screen displays C :\>, C>, A :\> or a similar message. The message displayed by DOS is called DOS Prompt or Sys

Definition of lists, Q. Definition of Lists? Another type of list is a ...

Q. Definition of Lists? Another type of list is a definition list. Definition lists have a heading and text appears below that. EXPERTSMI

What is reification, What is reification? It is the promotion of someth...

What is reification? It is the promotion of something that is not an object into an object. Helpful method for Meta applications. It shifts the level of abstraction. Promote

What are the advantages of inheritance in c++, It allows code reusability. ...

It allows code reusability. Reusability saves time in program development. It encourages the reuse of proven and debugged high-quality software, thus decreasing problem after a sys

What are function modules, What are function modules? Function m...

What are function modules? Function modules are general-purpose library routines that are available system-wide.

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