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 ...

Get Using csh & tcsh now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.