Linux和Unix下新建、删除环境变量的脚本

建立环境变量的脚本。变量建立在当前用户的配置文件里,XXX_HOME为要建立的变量名,tochage为变量值。

[code]
cd ~
XXX_HOME=tochage
export XXX_HOME
if [ -f ".bash_profile" ]
then
echo "">>.bash_profile
echo "XXX_HOME=$XXX_HOME">>.bash_profile
echo "export XXX_HOME">>.bash_profile
elif [ -f ".bash_login" ]
then
echo "">>.bash_login
echo "XXX_HOME=$XXX_HOME">>.bash_login
echo "export XXX_HOME">>.bash_login
else
echo "">>.profile
echo "XXX_HOME=$XXX_HOME">>.profile
echo "export XXX_HOME">>.profile
fi[/code]

删除环境变量的脚本(从当前用户的配置文件里删除)
[code]
cd ~
unset XXX_HOME

if [ -f ".bash_profile" ]
then
sed '/XXX_HOME/d' .bash_profile > .bash_profile.tempforinforsuite
cat .bash_profile.tempforinforsuite > .bash_profile
elif [ -f ".bash_login" ]
then
sed '/XXX_HOME/d' .bash_login > .bash_login.tempforinforsuite
cat .bash_login.tempforinforsuite > .bash_login
else
sed '/XXX_HOME/d' .profile > .profile.tempforinforsuite
cat .profile.tempforinforsuite > .profile
fi
[/code]

虽然很简单,但写这个脚本的时候还是学到了些东西。比如一般的用户的配置文件可能分.bash_profile、.bash_login、.profile这几种,以及用[color=red]sed '/某字符串/d' 文件名[/color]可以删除文件中包含某个字符串的行,将结果输出到屏幕上(不会直接写文件)。另外,如果此时直接将内容重定向回要操作的文件,可能会导致文件内容丢失。所以可以先把内容保存到一个临时文件里,然后在覆盖要操作的文件。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值