스크립트를 사용하여 상위 Bash 쉘의 프롬프트를 변경했습니다. 나는 다음과 같은 시도 :Bash 부모 쉘에서 PS1 프롬프트 변경
PS1="Hello World > "
이 스크립트가 실행되는 서브 쉘의 프롬프트를 변경하지만 이는 내가 부모 쉘의 프롬프트를 변경 할 때 사용하는 명령. 어떤 아이디어?
스크립트를 사용하여 상위 Bash 쉘의 프롬프트를 변경했습니다. 나는 다음과 같은 시도 :Bash 부모 쉘에서 PS1 프롬프트 변경
PS1="Hello World > "
이 스크립트가 실행되는 서브 쉘의 프롬프트를 변경하지만 이는 내가 부모 쉘의 프롬프트를 변경 할 때 사용하는 명령. 어떤 아이디어?
부모 셸이 협조해야합니다. 유닉스 환경에서의 자식 프로세스는 그것의 협력없이 부모 프로세스에 영향을 줄 수 없다.
eval "$(changePrompt.sh)"
또는 다른 접근 방식 : 부모 같은 쉘에서 스크립트를 호출 한 후
echo 'PS1="Hello World > "'
을 그리고 : 소스 스크립트 대신 호출
changePrompt.sh
서브 쉘 스크립트에서이 시도 그것. changePrompt.sh
이 같은
PS1="Hello World > "
전화를 :
source changePrompt.sh
하거나 : 부모의 협조없이 부모 프로세스를 변경하는 자식 프로세스를위한 방법은 없습니다
. changePrompt.sh
당신이 원하는 것을 가지고 .bash_rc 파일을 편집해야합니다 ... 그냥 똑바로 PS1 = "blah"또는 뭐든 추가하십시오.
.bash_rc 파일 (숨겨진 그래서 "LS -la")
당신이 그것을 편집 한, 소스를 홈 디렉토리/사용자/홈이든에 있어야하며 (소스를 작동합니다. bash_rc) - 같은 디렉토리라고 가정
.rc 파일을 시도해보십시오. ....이 시스템은 모든 쉘에 대해 (또는 적어도 있어야합니다.) ..... 자세한 정보를 보려면 여기를보십시오. :
http://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html --- 모든 C에서 here
. 당신의 예는 당신이 주로 이것을 파악하려고 시도하고 있음을 암시합니다. 그렇다면 지금 완료되었습니다. 해결해야 할 문제가 있다면 아마도 부모님이'PS1 = $ (subshell commands ...) '와 같이 협력 할 수 있습니다. – tripleee
성취하려고하는 것이 아니라 성취하려고하는 것을 정확하게 지정해야합니다 그것. 그런 식으로 우리는 개봉 된 것을 더 잘 이해하고 올바른 해결책을 도울 수 있습니다. – Patrick
명령 프롬프트를 "Hello World>"로 변경하고 싶지만 가능한 경우 영구적으로 사용하지 않으려합니다. – batsta13