LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 803|回复: 1

请问在 Shell 内怎样修改系统变量?

[复制链接]
发表于 2004-7-27 11:18:01 | 显示全部楼层 |阅读模式
我想在自己写的 Shell 内修改系统变量,如 LANG LC_CTYPE .. ,在运行 Shell 的时候可以看见他是修改了以上变量,但一回到控制台又回到原来的值,请问应该怎样编写?

#!/bin/sh

export LANG=zh_CN.GBK
....
locale <- shell 内显示以上变量正确

# ./myshell
。。。。正常
# locale <- 在控制台下检查一下还是原来的值
。。。原来的
发表于 2004-7-27 12:00:10 | 显示全部楼层

  1. source script
复制代码

环境变量向下有效,也就是说,对进程及其子孙有效,而该进程的父辈不可见。
./script将生成子进程,自然,子进程内的环境变量改动对父进程(也就是你的shell)不可见,无效。
source script将在本shell内执行脚本,所以有效。

ps:此乃基础,论坛大有成熟解释,望多搜索。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表