기본 프롬프트를 저장하고 복원하는 방법(PS1이 정의되지 않은 경우)?

기본 프롬프트를 저장하고 복원하는 방법(PS1이 정의되지 않은 경우)?

제가 아는 한, 제가 작업하는 공유 클러스터에서는 새 계정의 환경 설정에 프롬프트 설정이 포함되어 있지 않습니다. 특히 PS1설정이 없습니다. 그러나 사용자가 새 계정에 로그인하면 사용자 이름과 현재 디렉터리의 기본 이름이 포함된 다소 특이한 프롬프트가 표시됩니다.

필요한ORIGINAL_PS1 경우 복원할 수 있도록 이 프롬프트를 내가 선호하는 프롬프트로 바꾸기 전에 (예: 환경 변수에) 저장하고 싶습니다1 .

현재 프롬프트에서 프롬프트 정의를 추출하는 방법은 무엇입니까?

저는 주로 이 질문에 대한 답변에 관심이 있습니다 bash. 하지만 비슷한 내용이 있으면 zsh알려주시기 바랍니다.


1 나는 기본 프롬프트를 선호하지만 일상적인 사용에는 " git-aware" 프롬프트를 선호합니다. 즉, 후자가 99.999%의 경우 매우 유용하다고 생각하지만 때로는 프롬프트 생성이 용납할 수 없을 정도로 느려지는 매우 혼란스러운 저장소를 cd볼 수 있습니다 . git그런 드문 경우에 나는 달릴 수 있기를 원합니다 export PS1=$ORIGINAL_PS1.

답변1

ORIGINAL_PS1=$PS1기본 프롬프트 변수의 값이 새 변수에 저장됩니다.

PS1변수는 내보내지지 않은 쉘 변수입니다. 즉, 하위 프로세스에서 상속된 환경 변수가 아닙니다.

셸 에서 zsh"올바른 기본 프롬프트"를 추가로 저장해야 할 수도 있습니다 RPS1. 기본 프롬프트는 에서와 마찬가지로 에서도 PS1호출됩니다 .zshbash

관련 정보