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

Specify the default alignment, Specify the default alignment for the follow...

Specify the default alignment for the following field types: 'D' - Left, 'F'-Right, 'N'-Left, 'I'-Right, 'T'-Left.

Illustrate diffrent types of modems, Q. Illustrate Diffrent types of modems...

Q. Illustrate Diffrent types of modems? There are four different types of modems: half-duplex, full-duplex, synchronous, and asynchronous.With half-duplex modems data can be tr

Why are high-speed memories required, Q. Why are high-speed memories requir...

Q. Why are high-speed memories required? Is the main memory not a high-speed memory? The answer to second question is absolutely 'No' though why so? Then if memories are slowe

How to select valid lines for secondary list, How to select valid lines for...

How to select valid lines for secondary list? To stop the user from selecting invalid lines, ABAP/4 offers various possibilities.  At the end of the processing block END-OF-SEL

How different are interface and abstract class in .net, How different are i...

How different are interface and abstract class in .Net? Abstract classes cannot be instantiated it can have or can't have abstract method basically known as must inherit as th

De morgan''s laws - artificial intelligence, De Morgan's Laws Continuin...

De Morgan's Laws Continuing with the relationship between  ∧  and  ∨ , we can also use De Morgan's Law to rearrange sentences involving negation in conjunction with these conne

Explain the storage class register, The Storage Class register The Sto...

The Storage Class register The Storage Class register : The storage class 'register' tells the compiler that the associated variable  should  be stored  in  high-speed  memor

Padovan string , A Padovan string P(n) for a natural number n is defined as...

A Padovan string P(n) for a natural number n is defined as: P(0) = ‘X’ P(1) = ‘Y’ P(2) = ‘Z’ P(n) = P(n-2) + P(n-3), n>2 where + denotes string concatenation. For a string of t

Enumerate the process of dynamic modelling:, Define the Process of dynamic ...

Define the Process of dynamic modelling: Analyse applicability of actions Recognize object states Create dynamic model diagram Express every state in terms o

Define in detail about the architecture, Define in detail about the Archite...

Define in detail about the Architecture Architecture is the set of resources visible to machine language programmer: Registers, the memory, data representations, instructions

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