当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 7 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 再问一个设置环境变量的简单问题
帖子发表于 : 2010-01-26 11:51 

注册: 2010-01-06 14:21
帖子: 15
送出感谢: 0 次
接收感谢: 1
想要在一个脚本里实现对环境变量PATH的修改,并即时生效,用了这样一段代码
代码:
echo "PATH=$PATH:/home/bin">>/root/.bashrc
echo "export PATH">>/root/.bashrc
source /root/.bashrc

这样做内容是写进/root/.bashrc里了,但是没有即时生效
关闭这次会话后再重开一个ssh就可以了
把/root/.bashrc换成 /etc/profile效果也是一样的
比较奇怪的是同样的命令source /root/.bashrc,手动直接输入就能生效
想请教下大家应该怎么改


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 再问一个设置环境变量的简单问题
帖子发表于 : 2010-01-26 11:59 

注册: 2008-01-29 9:09
帖子: 32
送出感谢: 0 次
接收感谢: 0 次
你不执行怎么会加载呢
加载bash的时候会自动载入.bashrc配置的,否则只有source(或者.) .bashrc

PS:养成好习惯,bash的配置不要写到.profile里面去


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 再问一个设置环境变量的简单问题
帖子发表于 : 2010-01-26 12:35 

注册: 2010-01-06 14:21
帖子: 15
送出感谢: 0 次
接收感谢: 1
谢谢回答~解释下,这是个脚本文件
代码:
#!/bin/bash
#shtest.sh
echo "PATH=$PATH:/home/bin">>/root/.bashrc
echo "export PATH">>/root/.bashrc
source /root/.bashrc

然后执行#./shtest.sh
我这样做的,然后#$PATH,里面没有想要添加的路径~


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 再问一个设置环境变量的简单问题
帖子发表于 : 2010-01-26 12:39 

注册: 2010-01-06 14:21
帖子: 15
送出感谢: 0 次
接收感谢: 1
或者是我把最后一句改成
代码:
eval "source /root/.bashrc"
但是也没有用


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 再问一个设置环境变量的简单问题
帖子发表于 : 2010-01-26 12:57 

注册: 2008-01-29 9:09
帖子: 32
送出感谢: 0 次
接收感谢: 0 次
是这样的
你执行source的时候是处于你当前shell的子shell下,所以环境变量是对你这个子shell起作用了,而你当前shell必须退出才能读取到这个环境变量
你可以用exec shtest.sh来达到你的目的
我是这样理解的,如果有错误请指出


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 再问一个设置环境变量的简单问题
帖子发表于 : 2010-01-26 13:41 

注册: 2010-01-06 14:21
帖子: 15
送出感谢: 0 次
接收感谢: 1
little_gg 写道:
是这样的
你执行source的时候是处于你当前shell的子shell下,所以环境变量是对你这个子shell起作用了,而你当前shell必须退出才能读取到这个环境变量
你可以用exec shtest.sh来达到你的目的
我是这样理解的,如果有错误请指出

谢谢回复!我也是这样理解的,但是改的是用户配置文件,应该是和shell无关的,只要用root登录都会生效的,事实是我重开一个ssh连接用root来登录就生效了,很奇怪


页首
 用户资料  
 
7 楼 
 文章标题 : Re: 再问一个设置环境变量的简单问题
帖子发表于 : 2010-02-06 19:17 

注册: 2008-03-06 4:56
帖子: 82
送出感谢: 0 次
接收感谢: 0 次
配置文件是每次启动bash的时候处理的

建议把脚本改成bashrc里的函数,然后直接解决问题


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 7 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译