터미널의 첫 번째 bash 프롬프트가 언제 입력되는지 알 수 있습니까?

터미널의 첫 번째 bash 프롬프트가 언제 입력되는지 알 수 있습니까?

이것은 내 마지막 질문의 연속입니다.마지막 bash 입력 명령을 인쇄하고 저장합니다.

이제 터미널에 첫 번째 bash 프롬프트를 입력하면 알 수 있는지 궁금합니다. 그래서 현재 프롬프트 위에 마지막 명령 실행을 표시합니다. 새 터미널에서 마지막 N 명령을 표시하면 멋질 것 같습니다.

나는 내 마지막 명령을 에코할 수 있다고 생각 .bashrc하지만 그것은 좋은 생각이 아닌 것 같습니다. 또한 롤백이 지워질 때(에 의해 ) clear마지막 N 명령을 표시하는 것도 좋을 것입니다 .

이것이 (합리적으로) 가능합니까?

답변1

.bashrc의 마지막 명령을 그대로 반영할 수도 있겠지만 그건 좋은 생각이 아닌 것 같습니다. 또한 롤백이 지워질 때(clear를 통해) 마지막 N 명령을 표시하는 것도 좋을 것입니다.

bash 소스 코드를 수정하지 않고 이 작업을 수행할 수 있는 다른 방법이 있는지는 잘 모르겠지만... .bashrc에 넣는 데 아무런 문제가 없는 것 같나요? 어떤 스크립트에서도 인쇄되지 않도록 상호작용 테스트를 추가해야 합니다.

if [ ! -z "$PS1" ]; then
    echo "Hello, the last 5 commands you typed were :"
    tail -n5 ~/.bash_history
fi

기본적으로 동일한 작업을 수행하는 명확한 별칭을 만들 수도 있습니다.

답변2

하다:

echo $LINENO

아니면 프롬프트에 넣으세요.

답변3

http://www.thegeekstuff.com/2008/09/bash-shell-ps1-10-examples-to-make-your-linux-prompt-like-angelina-jolie/

페이지 하단까지 스크롤하세요. \#"명령 번호"를 표시하는 코드에 대해 설명합니다 . 1부터 시작하여 터미널을 종료할 때까지 입력하는 각 명령에 따라 증가합니다. 나는 그것이 매우 유용하다고 생각했습니다.

관련 정보