shell脚本中执行source命令

daniel_xtc 2011-07-06 04:40:31
我有个需求,希望有大侠指点
我不希望在命令窗口输入 source test.sh
我希望能把这个命令写在脚本config.sh中,因为有很多这种操作(source file)。
当我在窗口执行config.sh时无任何效果。期望source file能有效执行。
请问如何实现?先谢谢了。

...全文
1282 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
daniel_xtc 2011-07-07
  • 打赏
  • 举报
回复
刚才发现我挺笨的
在修改.cshrc之后
export修改的变量就可以了

daniel_xtc 2011-07-07
  • 打赏
  • 举报
回复
谢谢 louyong0571

. ./config.sh 的确能够变更环境变量
但是和source config.sh一样需要用户输入较多的命令
而且最重要的是它需要在窗口输入,无法写在脚本中,因为那样也得source 脚本才行。
这样就无法实现一键傻瓜安装了。

感谢大家的帮助,我现在没有找到完美的解决办法,只有要求在配置文件都变更好后用户重新登录了。

下午下班前结贴。谢谢大家。
louyong0571 2011-07-07
  • 打赏
  • 举报
回复
试试 . ./config.sh
daniel_xtc 2011-07-06
  • 打赏
  • 举报
回复
实际上我需要实现的功能为
rm ${HOME}/user/.cshrc
cp ${HOME}/user/copy/.cshrc ${HOME}/user
然后
source ${HOME}/user/.cshrc
source /home/user/test/cshrc
source /home/user/bin/cshrc

所以.login 登录运行方法也貌似不行。
胡天八月鹅毛大雪天跪求帮助!

daniel_xtc 2011-07-06
  • 打赏
  • 举报
回复
谢谢thefirstz


下面是/home/user/.cshrc中内容
umask 027
set history = 40
set filec
stty erase ^H
setenv HOME /home/user/home2
#引用文件
source ${HOME}/test/cshrc

下面是config.sh中内容
#!/bin/csh
#config.sh
source /home/user/.cshrc
source /home/user/test/cshrc
source /home/user/bin/cshrc

我期望能直接在窗口输入config.sh就source成功(${HOME}目录变化)
但是现在必须输入 source config.sh。
我按thefirstz的方法输入./config.sh ,好像没有实现呀!


昵称很不好取 2011-07-06
  • 打赏
  • 举报
回复
1,按特定语法格式写成shell脚本config.sh
2,chmod 744 config.sh
3,./config.sh

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧