기록에서 호출하는 대신 기록 확장 명령을 다시 작성해야 합니다.
예를 들어 다음 명령에서 35를 36, 37, 38....로 변경해야 합니다.
$ print -P '\033[35mThis is the same red as in your solarized palette\033[0m'
$ !!:gs/35/36
이제 해야 할 일!!:gs/36/37
Up그러나 열쇠를 사용할 때 . 표시되지 않습니다 $ !!:gs/35/36
. 보여주다print -P '\033[35mThis is the same red as in your solarized palette\033[0m'
여기서 무엇을 할 수 있나요?
답변1
원하는 것을 달성할 수 있는 방법에 대한 두 가지 제안이 있습니다(참고용 bash
).
역사에 추가하세요
첫 번째 기록 확장 명령줄을 입력하기 전에 기록 확장( set +H
)을 비활성화하고 기록 확장 명령을 "실행"한 다음 다시 활성화를 사용할 수 있습니다 set -H
. 그런 다음 이는 쉘 기록의 일부가 되며 쉽게 돌아가서 수정할 수 있습니다.
쉘 기록에서 기록 확장 명령줄을 얻는 보다 직접적인 방법은 입니다 history -s
. 그러나 이전 조언이 기억하기 더 쉬울 수도 있습니다(복잡한 인용의 경우 더 쉬울 수도 있음)(셸 옵션에 대한 친숙도에 따라 다름).
라인 풀인 읽기
이는 전체 작업 중에 저크를 할 필요가 없을 때 가장 유용합니다.
기록 확장 명령줄을 입력하고 를 누르지 마십시오 Enter. 대신 줄의 시작/끝으로 이동하여 Ctrl- K/ Ctrl-를 사용하여 전체 줄을 삭제하세요 U. 이것은 전체 라인을 킬링 링에 넣습니다. Ctrl-restore line 을 사용할 수 있습니다 Y. 명령을 실행한 후에도 킬 링에 다른 것을 넣지 않는 한 이 방법으로 되돌릴 수 있습니다. 그럼에도 불구하고 Ctrl- Y Alt-를 사용하여 이전 킬링 항목으로 돌아갈 수 있습니다 Y.