3.2.2 히스토리 확장
히스토리 확장은 특별한 표현식을 통해 명령 히스토리에 접근하는 셸의 기능이다. 이 표현식은 느낌표 기호(일반적으로 ‘뱅’이라고 읽는다)로 시작한다. 예를 들어 느낌표 기호 두 개(!!)는 바로 이전에 입력한 명령으로 평가된다.
$ echo Efficient Linux Efficient Linux $ !! # 느낌표 두 개 = 바로 이전 명령 echo Efficient Linux # 현재 실행되는 명령을 보여준다 Efficient Linux
명령 히스토리에서 어떤 특정한 문자열로 ‘시작’하는 가장 최근 명령을 사용하려면, 느낌표 뒤로 이 문자열을 붙여 입력한다. Enter 키를 누르면 가장 최근에 실행했던 grep 명령이 실행된다. !grep을 입력해보자.
$ !grep
grep Perl animals.txt
alpaca Intermediate Perl 2012 Schwartz, Randal
명령 히스토리에서 어떤 특정한 문자열을 ‘포함’하는 가장 최근 명령을 사용하려면, 다음과 같이 물음표로 해당 문자열을 감싼 표현식을 입력한다.1
$ !?grep?
history | grep -w cd
1000 cd $HOME/Music
1092 cd ..
...