Chapter 6. Using Your Command History
In This chapter:
The History List
Reviewing Your History
Using Commands from Your History
Event Specifiers
Word Designators
Event Modifiers
Making History Persist Across Login Sessions
Shell users often type out, in full, every command they want to execute. This is inefficient and unnecessary, since the shell lets you maintain a history list and recall commands from the list to repeat them. That way, you can enter commands more quickly, with less typing. As an example, the following two sequences of commands are equivalent (they're from a session in which agenda items were edited and format-checked, and then mailed and printed). The difference between the sequences is that the first doesn't make use of the history mechanism, while the second does.
Sequence 1:
%tbl agenda-apr | nroff -ms%tbl agenda-apr | nroff -ms | more%vi agenda-apr%tbl agenda-apr | nroff -ms > agenda-apr.txt%mail -s 'Here is the April agenda' tom < agenda-apr.txt%mail -s 'Here is the April agenda' marian < agenda-apr.txt%lpr agenda-apr.txt
Sequence 2:
%tbl agenda-apr | nroff -ms%!! | more%vi !^%tbl !$ | nroff -ms > !$.txt%mail -s 'Here is the April agenda' tom < !$%^tom^marian%lpr !$
You can see that the number of keystrokes is reduced considerably by reusing commands that have already been issued, in either their original or modified form. The second sequence may seem cryptic if you're not familiar with the shell's history mechanism, but don't let that scare ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access