명령 재실행 에 대해 알고 있지만 !!
변수가 포함된 명령을 재실행하면 정확히 어떻게 됩니까?
답변1
자, 한번 시도해 봅시다:
$ foo=bar
$ echo $foo
bar
$ foo=qux
$ !-2
echo $foo
qux
$ history
...
219 foo=bar
220 echo $foo
221 foo=qux
222 echo $foo
223 history
그래서 명령이 기록에 추가된 것 같습니다앞으로변수 확장이 발생했습니다.
답변2
시행착오를 거치면 유용할 수 있고 매우 빠르게 결과를 얻을 수 있을 것 같습니다. 질문하기 전에 이러한 것들을 직접 시도해 보는 것이 가장 좋습니다. 자세하고 자세한 질문을 하실 수 있습니다 :)
당신은 이것에 익숙하지 않은 것 같습니다. 아마도 다음이 당신에게 도움이 될 것입니다.
$ history -c
$ FOOD="Bananas"
$ echo $FOOD
Bananas
$ history
137 FOOD="Bananas"
138 echo $FOOD
139 history
$ !138
echo $FOOD
Bananas
보시다시피 history
명령은 예상대로 작동합니다. 138을 실행함으로써 처음 실행했을 때와 똑같은 명령을 실행했습니다.
전문가 팁: man
관심 있는 명령에 대한 자세한 정보를 읽으려면 이 명령을 사용하십시오. 전임자:
man history
Q완료되면 종료를 입력합니다.
건배!