여러 히스토리 명령을 다시 실행


22

방금 십여 개의 명령을 실행했다고 상상해보십시오. 말하다...

$ cd foo/    # history cmd #10000 (my history is very long)
$ ... more commands ...
$ cd ../     # history cmd #10012 

나는 !-12 && !-11 && !-10 && (and so on) && !!그들이 ( 아마도 ) 또는 방금 실행 된 경우에 연결하여 다시 실행할 수 있다는 것을 알고 !10000 && !10001 && !10002 && (and so on)있지만, 각 기록 번호를 뱅 및 앰퍼샌드로 수동 입력하는 것보다 간단한 방법이 있습니까?

내가 bash에서 알지 못하는 종류의 것이 있습니까?

예를 들어, !{10000-10012}# 이런 식으로 만 작동합니다.

답변:


23

이것이 fc명령의 목적입니다.

fc -12 -1

또는

fc 10000 10012

이것은 편집기를 먼저 시작하므로 원하는 것은 아니지만, 올바른 명령이 있는지 다시 확인하고 즐겨 사용하는 편집기의 모든 기능을 사용하여 편집 할 수 있기 때문에 아마도 좋은 일입니다. 변경 사항을 저장하고 편집기를 종료하면 명령이 실행됩니다.


아하! 훌륭한! fc. 명령 수정. 맞는 말이다!
inanutshellus

1
편집기가 실행되지 않도록 (위험한!)fc -e true -12 -1
BingsF

우분투에서 사용할 수 없음
okwap

1
@okwap, 말도 안됩니다. 그것은이다 POSIX 지정 및 우분투에서 확실히 가능합니다. (이 내장 된 쉘은 같이하지만-, 야 한다 당신이 찾고 있다면 이렇게 될 /bin당신을 찾을 수 없습니다.)
와일드 카드
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.