为了修改我的path(如LD_LIBRARY_PATH或PYTHONPATH),我首先检查是否存在variables。 如果是这样,我把我的旧价值连接到新的(用分号分隔),否则我把我的variables设置为新的值。
NEW_PATH='/path/to/new/path' if [ $LD_LIBRARY_PATH ] then export LD_LIBRARY_PATH=$NEW_PATH:$LD_LIBRARY_PATH else export LD_LIBRARY_PATH=$NEW_PATH fi
它可以工作,但是当你在脚本中有很多这样的代码来源时,它有点笨拙:是否有一个聪明的技巧来使这个块成为一个很好的单线程?
谢谢 !
这个语法工作:
export LD_LIBRARY_PATH=$NEW_PATH${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
所以也许这不是你问的问题,而是你可以做到的:
if [ -z "$LD_LIBRARY_PATH" ]; then export LD_LIBRARY_PATH=/some/sane/default fi
…然后你知道它总是设置,所以你可以离开上面的else 。