为了修改我的路径(如 LD_LIBRARY_PATH 或 PYTHONPATH),我首先检查变量是否存在。如果存在,我连接我的旧值与新值(用分号分隔),否则我设置我的变量为新值。
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
它可以工作,但是当脚本中有很多这样的内容时,它会有点笨拙:是否有一个巧妙的技巧可以使这个块成为一个很好的单行代码?
谢谢 !
答案1
此语法有效:
export LD_LIBRARY_PATH=$NEW_PATH${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
答案2
所以也许这并不完全是你要求的,但在顶部你可以这样做:
if [ -z "$LD_LIBRARY_PATH" ]; then
export LD_LIBRARY_PATH=/some/sane/default
fi
...然后您知道它始终被设置,因此您可以忽略else
上述内容。