我们很多时候需要将一个大功能的shell脚本分在不同的文件里,这样能起到条理清晰,多次复用的好处。
但是有一个问题不得不提出来,就是单个shell里面设置的环境变量在引用者里面是无效的。
举例说明:
- a.sh的内容,我们在a中执行b
#!/usr/bin/sh b.sh echo $test_a
- b.sh的内容,我们设置了一个环境变量,或者说变量。
#!/usr/bin/sh export test_a=ok;
- 结果如下:
[osstest:/oradata/olcomtest$]a.sh ok [osstest:/oradata/olcomtest$]
可见b中可以输出了正常的值,而a中则无法引用,这是shell的本有的特点。
但是我们如何能达到一个环境变量设置的文件多次使用呢。
答案是:我们将b.sh中的文件内容在a中逐行执行, 注意如果b中存在多行一个单位的脚本则无效了。
例子如下:
#!/usr/bin/sh ##定义配置文件的存放目录 envFile=./setenv.sh; echo "设置配置文件中的配置,配置文件为:${envFile}"; sleep 2; while read line do eval $line; echo $line; done < $envFile; echo "环境变量设置完成,5秒后将启动程序"; sleep 1; echo "5"; sleep 1; echo "4"; sleep 1; echo "3"; sleep 1; echo "2"; sleep 1; echo "1"; ##启动程序 ./NEA035 NEA035
这样我们的NEA035程序就能使用setenv.sh中的环境变量了。
相关推荐
很强悍的SHELL开发参考文档,LINUX,UNIX,SHELL,AIX,VI,脚本 LINUX,UNIX,SHELL,AIX,VI,脚本
备份文件到指定FTP主机目录中,用户AIX服务器或UNIX服务器
使用方法,把文件复制到/bin目录,用命令赋予权限:#chmod 755 AIX,然后就可以直接运行,#AIX,会自动检测设备健康状态,在屏幕显示出来并保存文件包便于查询,保存目录在屏幕上显示。自动删除旧文件。
AIX下安装ORACLE前期设置脚本 AIX下安装ORACLE前期设置脚本 AIX下安装ORACLE前期设置脚本
AIX-SHELL基本编程 在AIX系统上SHELL编程
AIX-SHELL基本编程.doc 根据网上资料下载的,整理了拿来看,顺便发个同行 学习如何使用 bash 脚本语言编程,将使 Linux 的日常交互更有趣和有生产力,同时还可以利用那些已熟悉和喜爱的标准 UNIX 概念(如管道和...
aixshell 编程
aix常用操作命令(vi,shell),这个是公司内部培训的采用命令
该函数实现当前日期的钱N天和当前日期的后N天计算; yyyyMMdd -N ##yyyyMMdd日期前N天 yyyyMMdd N ##yyyyMMdd日期后N天
k shell script基本上把 aix 的 k shell script的一些特性都覆盖到了,所以就用这个例子, 文本分析我用了awk, 没用 perl,因为用不上perl那些超强的extended regular expression分析,我就用了awk,附件中有个awk文件的...
【信息采集】IBM AIX系统硬件配置信息采集完整shell脚本V2.1 查看IBM AIX系统的主机型号、序列号、CPU、内存、硬盘、网卡、网卡物理插槽位置信息、是否配置以太网通道、网卡链路状态、当前网络速率、HBA卡、HBA卡...
取aix、linux上一个月的日期shell脚本;
IBM AIX系统硬件配置信息查看命令(shell脚本) 原文地址:http://xunzhaoxz.itpub.net/post/40016/522464 查看主机型号、序列号、CPU、内存、硬盘、网卡、网卡物理插槽位置信息、是否配置以太网通道、网卡链路状态...
Randal K.Michael 是一位在可口可乐公司任职的UNIX系统管理员,他编写了许多shell脚本来处理UNIX下复杂的系统监视和事件通知问题。他具有23年的工作经验,同时担任UNIX系统管理员达10年之久,熟悉 Solaris 、Linux、...
一个AIX shell字符颜色demo,放到aix环境赋权限执行即可~
基于aix tsm的恢复脚本整理发布
AIX下自动备份ORACLER的具体操作技巧。欢迎交流ORACLE心得
http://pm.htjs.net/cbb shell脚本,AIX下启动、关闭weblogic脚本