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 ..
    ...
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.