在我.bash_profile
我:爲什麼我不能在Ruby腳本中訪問我的bash提示符?
if [ -f $(brew --prefix)/etc/bash_completion ]; then
source $(brew --prefix)/etc/bash_completion
GIT_PS1_SHOWDIRTYSTATE=1
git_prompt='$(__git_ps1)'
fi
export PS1="\[\e[33m\] \d \t \w$git_prompt\n\[\e[m\]\\$ "
export MYTESTVAR="hello world"
我有一個Ruby腳本foo.rb
包含:
`source ~/.bash_profile`
puts `printenv`
puts `echo $PS1`
puts `echo $MYTESTVAR`
當我運行ruby foo.rb
的printenv
命令列出所有的環境變量,而$MYTESTVAR
線正確返回hello world
。
但是,$PS1
沒有顯示出來。爲什麼是這樣?
但它是比這更復雜,因爲那裏涉及五個獨立的流程,每個流程都有自己的環境。 –
我沒有抓到那部分。更新。 –