Имеет ли Bash что-то вроде || =?
I.e., есть лучший способ сделать следующее:
if [ -z $PWD ]; then PWD=`pwd`; fi
Я спрашиваю, потому что я получаю эту ошибку:
$ echo ${`pwd`/$HOME/'~'}
-bash: ${`pwd`/$HOME/'~'}: bad substitution
Итак, мой план:
if [ -z $PWD ]; then PWD=`pwd`; fi
echo ${PWD/$HOME/'~'}
Мой настоящий вопрос: "Есть ли лучший способ сделать следующее?"
# ~/.bash_profile
# Set prompt to RVM gemset, abbr. of current directory & (git branch).
PROMPT_COMMAND='CUR_DIR=`pwd|sed -e "s!$HOME!~!"|sed -E "s!([^/])[^/]+/!\1/!g"`'
PS1='$(~/.rvm/bin/rvm-prompt g) [$CUR_DIR$(__git_ps1)]\$ '