在Linux开发过程中对环境变量的修改是难免的,手工修改环境变量痛苦不言而喻,而export也只能影响到当前shell的。在脚本中修改的变量只能通过source才能使父shell生效。自己写了一个备份环境变量和恢复的脚本,有待完善,但能用。
BAK=”env.bak”
function bak(){
echo “export PATH=$PATH” > ${BAK}
echo “export LD_LIBRARY_PATH=$LD_LIBRARY_PATH” >> ${BAK}
echo “export SDGHOME=$SDGHOME” >> ${BAK}
echo “export Oracle_HOME=$ORACLE_HOME” >> ${BAK}
}
function change(){
AR=$1
RE=`sed -n ‘/${AR}=/’p ${RC}`
RB=”export `sed -n ‘/${AR}=/’p ${BAK}`”
if [ “${RE}” == “” ];then
echo ${RB} >> ${RC}
else
sed -i “s/^\(${AR}=\).*/&${RB}” >> ${RC}
fi
}
function restore(){
RC=~/.bashrc
change “PATH”
change “LD_LIBARY_PAHT”
change “SDGHOME”
change vps云服务器 “ORACLE_HOME”
}
short_options=”b:r:n”
long_options=”back:,restore:,name:”
10319495