현재 터미널에서 이전 명령부터 마지막 명령까지 에코하는 함수를 만들려고 합니다. 이것은 예상되는 출력입니다(여기에서는 이를 원하는 함수라고 부릅니다 f
).
$ history 1
history 1
$ f
history 1
부가 질문: history(1)
현재 터미널의 기록은 어디에 저장되어 있나요? 터미널 세션이 끝나면 기록은 일반적으로 $HISTFILE
(제 경우에는 ~/.bash_history
)에 저장된다는 것을 알고 있습니다. 그런데 history(1)
현재 실행중인 터미널의 이력이 어디에 있는지 알고 싶습니다 .
답변1
해결책을 찾았습니다.
f()(echo $(history 2 | head -n1 | cut -d' ' -f2-))
fc
또는 G-Man이 제안한 대로 사용하십시오.
f()(fc -ln -1)
시험:
$ echo 123*
123*
$ f
echo 123*