我只是想问一下美容方面的问题。
我导出了一些变量,.bashrc
如下所示:
export LD_LIBRARY_PATH=/usr/local/matlab/bin/glnxa64:\
$FASTNET_INSTALL_PATH/lib:$EGRINGERANATOOLS/lib:\
$LD_LIBRARY_PATH
但我习惯于缩进命令开始后的行以便于查看,例如:
export LD_LIBRARY_PATH=/usr/local/matlab/bin/glnxa64:\
$FASTNET_INSTALL_PATH/lib:$EGRINGERANATOOLS/lib:\
$LD_LIBRARY_PATH
但如果我这样做,我会收到如下错误:
-bash: export: `~/fastnet/install/lib:~/Documents/D3PD/EgRingerAnaTools/lib:': not a valid identifier
有没有办法按照我的需要缩进这些行?
谢谢!
答案1
您可以创建这样的函数......
setpath() {
oldIFS=$IFS; IFS=":"
var=$1; shift; eval "$var=\$*; export $var"
IFS=$oldIFS; unset oldIFS
}
setpath LD_LIBRARY_PATH \
/usr/local/matlab/bin/glnxa64 \
"$FASTNET_INSTALL_PATH/lib" \
"$EGRINGERANATOOLS/lib" \
"$LD_LIBRARY_PATH" ;
(我在我的 ~/.profile 中使用了这个函数,因此它被编写为与读取该文件的任何 shell 兼容,包括 sh、ksh、bash、zsh……如果用纯 Bash 编写的话会更短。)