![Bash에서 Windows 스타일 명령 기록 탐색과 같은 기능을 어떻게 활성화합니까?](https://linux55.com/image/126301/Bash%EC%97%90%EC%84%9C%20Windows%20%EC%8A%A4%ED%83%80%EC%9D%BC%20%EB%AA%85%EB%A0%B9%20%EA%B8%B0%EB%A1%9D%20%ED%83%90%EC%83%89%EA%B3%BC%20%EA%B0%99%EC%9D%80%20%EA%B8%B0%EB%8A%A5%EC%9D%84%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%ED%99%9C%EC%84%B1%ED%99%94%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
개인적으로 저는 각 명령이 기록에서 해당 위치를 유지하고 마지막으로 실행된 명령으로 돌아갈 때 반드시 기록의 마지막 명령이 아닐 수도 있는 Windows 방식의 명령 기록 탐색(죄송합니다!)을 선호합니다.
이것이 말이 되는지 확실하지 않으므로 예를 들어 설명하겠습니다.
불다
one
4개의 명령( , , , , ) 을 실행한다고 가정합니다 . 이후 명령 기록(가장 오래된 것부터 가장 최근까지)은 다음과 같습니다.two
three
four
one
two
three
four
이제 위쪽 키를 세 번 누르면 예상대로 four
, 및 으로 돌아가게 됩니다 . Enter를 누르면 명령이 실행됩니다 . 이제 기록은 다음과 같습니다.three
two
two
one
two
three
four
two
누르면 ↑그걸 볼 수 있어요 two
. 다시 누르면 four
등등이 보입니다.
윈도우
동일한 4개의 명령(,,,, one
)을 실행한다고 가정해 보겠습니다. 이후 명령 기록(가장 오래된 것부터 가장 최근까지)은 다음과 같습니다.two
three
four
one
two
three
four
이제 위쪽 키를 세 번 누르면 이전과 마찬가지로 , four
및 으로 돌아가게 됩니다 . Enter를 누르면 명령이 실행됩니다 . 이제 다시 누르면 여전히 표시됩니다 . 그러나 역사는 여전히 이렇습니다.three
two
two
↑two
one
two
three
four
이것은 내가 역사의 이전 순간으로 "점프백"했다는 것을 의미합니다. 이제 ↑보기 one
나 ↓보기 three
등을 누를 수 있습니다 .
이것이 왜 유용한가?
이는 일련의 명령을 실행한 후 다시 실행하려는 경우에 특히 유용합니다. 그것은 포함된다상당히더 적은 키 입력으로 전체 시리즈를 다시 실행하십시오.
Bash가 동일하게 동작하도록 하는 방법이 있습니까?
답변1
이것은 귀하의 질문에 직접적으로 대답하지는 않지만 결국 실제 대답이 없으면 도움이 될 수 있습니다.
일련의 명령을 실행한 경우:
$ one
$ two
$ three
$ four
$ history
1 one
2 two
3 thee
4 four
시퀀스를 다시 실행하려면 다음을 수행하면 됩니다.
!1; !2; !3; !4
또는 이전 명령이 성공한 경우에만 후속 명령을 실행하려는 경우:
!1 && !2 && !3 && !4
그러면 기록에 다음과 같은 항목이 표시됩니다.
$ history
1 one
2 two
3 three
4 four
5 one; two; three; four
6 one && two && three && four
그런 다음 시퀀스를 다시 실행하려면 화살표를 사용하거나 다음과 같이 사용할 수 있습니다.!5