Bash에서 문자열이 포함된 마지막 명령을 실행하는 방법은 무엇입니까?

Bash에서 문자열이 포함된 마지막 명령을 실행하는 방법은 무엇입니까?

나는 bash 쉘을 사용하고 있습니다. 일반적으로 특정 문자열로 시작하는 마지막 명령을 반복하려면 다음을 실행하면 됩니다.

$ !cat

문자열이 포함된 마지막 명령을 실행하려면 어떻게 해야 합니까? 즉, 명령을 입력하면

$ cat dave.txt

위의 명령인 "dave"를 사용하여 마지막 명령을 실행하고 싶습니다. 이를 허용하는 바로가기가 있습니까?

답변1

?이벤트 표시기 사용 :

!?dave

바라보다 man bash:

? 끈[? ]

참조에는 기록 목록의 현재 위치보다 앞선 가장 최근 명령이 포함되어 있습니다 string. 뒤에 개행 문자가 오면 ?후행 문자를 생략할 수 있습니다.string

하지만 기록에서 무작위 명령을 호출하는 것은 위험하다는 것을 알았습니다. 다른 터미널/디렉토리에 있고 실수로 무언가를 삭제하면 어떻게 될까요? Ctrl + R더욱 안전하고 유연해졌습니다.

관련 정보