对于 Linux 来说相当陌生。我的用户 bash 配置文件中有一个路径变量,我们想在服务器上的一些脚本中利用它。
我要更改的脚本部分如下
if [[ ${PATH} =~ .*scripts/new.* ]]; then
export BASE_PATH=/data/scripts/new:/data/scripts:/usr/lib64/qt-3.3/bin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/mssql-tools/bin:/home/${USER}/bin
else
export BASE_PATH=/data/scripts:/usr/lib64/qt-3.3/bin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/mssql-tools/bin:/home/${USER}/bin
我打算删除该/home/${USER}/bin
部分,而是从用户的 .bash_profile 中选择部分 PATH 变量并将其附加到
在 bash_profile 中,PATH 变量的一个示例是
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/bin/scaffold.d
我想像这样选择第一个冒号后的所有内容
$HOME/.local/bin:$HOME/bin:$HOME/bin/scaffold.d
然后让它能够将其拉入脚本,类似于
if [[ ${PATH} =~ .*scripts/new.* ]]; then
export BASE_PATH=/data/scripts/new:/data/scripts:/usr/lib64/qt-3.3/bin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/mssql-tools/bin:$HOME/.local/bin:$HOME/bin:$HOME/bin/scaffold.d
else
export BASE_PATH=/data/scripts:/usr/lib64/qt-3.3/bin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/mssql-tools/bin:$HOME/.local/bin:$HOME/bin:$HOME/bin/scaffold.d
我相信使用 grep 在这里会起作用,但我不太确定如何实现它。