一个 UNIX 开发者需要掌握的 AIX 技巧
2010-08-16 00:00:00 来源:WEB开发网"." 命令 (csh 下则是 "source" 命令 )
做为一种重要的 UNIX 环境,要熟练使用 AIX,我们应该熟悉命令行界面。因此还是需要先介绍一下 shell 环境。
在 AIX 的默认 KSH 环境下,我们使用到的变量有两种类型,环境变量和本地变量。我们可以分别使用命令 env 和 set 来检查这两种变量的设置, 也可以使用 export 命令将本地变量输出为环境变量。
这两种变量的区别是什么?简单来说,本地变量只有当前 shell 可以使用,而环境变量则可以被当前 shell 以及它的子 shell 使用。
这种设置有时会给我们的脚本调试带来一些额外的工作。比如我们会遇到两个问题,而这时也是我们需要使用 source 命令来提高我们工作效率的时候:
1)、当我们调用子脚本的时候,为了传递必须的变量,我们必须调用 export 输出所有的子 shell 用到的变量。在变化的环境中有时这种手工的设置很难做到及时准确。当调试复杂脚本集的时候尤其如此。这时我们可以使用 .(csh 下为 source 命令 ) 命令来调用子脚本。所有的本地变量都可以在子脚本中使用。举个例子:
脚本 test5.sh 的内容为:
清单 7. 脚本 test5.sh
#test5.sh
echo "Trying to print Var1: $Var1"
zhudany@Testing1:/experiment>Var1="Local variable a"
zhudany@Testing1:/experiment>./"test5.sh"
Trying to print Var1:
zhudany@Testing1:/experiment>. ./"test5.sh"
Trying to print Var1: Local variable a
zhudany@Testing1:/experiment>
2)、反过来,还有这样一种需求,我们每次使用新的 shell 环境时,需要先设置较多的本地变量,我们也可以将这些变量存入一个脚本文件,每次初始化 shell 环境的时候使用 source 命令调用这个脚本文件既可。一个典型的例子是 .profile 文件。比如做为 DB2 实例用户的 db2inst1 的 .profile 文件可能会有如下几行:
更多精彩
赞助商链接