Here's how to be more sure of your history before you use it.
First, some review of
csh
and
bash
history substitutions:
-
!/
and
!fra
are replaced with the most recent command
lines that started with
/
and
fra
, respectively.
-
!?af?
is replaced with the most recent command line that
contained
af
anywhere on the line.
But if your memory is like mine (not very good), you might not be sure
that
!?af?
will bring back the command you want.
You can test it by adding
:p
to the end.
The shell will print the substitution but won't execute the command line.
If you like what you got, type
!!
to execute it.
For example:
%
!?af?:p
lp afile bfile cfile
%
!!
lp afile bfile cfile
request id is 676
At the first prompt, the
:p
meant the command line was only printed.
At the second prompt, I didn't use
:p
and the
lp
command
was executed.
The
:p
works with all history operators, not just with
!?...?
.