Chinaunix
标题:
su中输出变量无结果!在线等!
[打印本页]
作者:
taosicai
时间:
2013-08-06 14:33
标题:
su中输出变量无结果!在线等!
要获取环境变量INFORMIXSQLHOSTS=/tmp/sqlhosts.a
操作系统aix6.1,代码如下
su - db2inst1 <<EOF
fileName=`env | awk -F= '/INFORMIXSQLHOSTS/{print \$2}`
echo \$fileName
EOF
说明:要使用su - <<EOF这种方法,因为块还有其他命令。
echo $fileName这样无结果,经测试
file="=/tmp/sqlhosts.a"
echo \$fileName
结果就正确,为什么?
{print $2}无论加不加\都取不出结果,我该怎么写?
作者:
taosicai
时间:
2013-08-06 14:34
# ksh -vx a.sh
su - db2inst1 <<EOF
fileName=`env | awk -F= '/INFORMIXSQLHOSTS/{print \$2}`
echo \$fileName
EOF
+ su - db2inst1
+ 0<<
fileName=+ env
+ env
+ awk -F= /INFORMIXSQLHOSTS/{print $2}
+ awk -F= /INFORMIXSQLHOSTS/{print $2}
echo $fileName
#
作者:
rdcwayx
时间:
2013-08-06 14:40
su - db2inst1 <<EOF
fileName=\`env | awk -F= '/INFORMIXSQLHOSTS/{print \$2}'\`
echo \$fileName
EOF
复制代码
作者:
Shell_HAT
时间:
2013-08-06 14:40
su - db2inst1 <<EOF
fileName=\`env | awk -F= '/INFORMIXSQLHOSTS/{print \$2}'\`
echo \$fileName
EOF
复制代码
作者:
taosicai
时间:
2013-08-06 14:43
谢谢二位高手,马上去试下。
作者:
taosicai
时间:
2013-08-06 15:48
二位大侠真历害,
同时出手,招数一致!
问题解决
重点用\转换,包括$和`等
结贴
作者:
davidbeckham921
时间:
2013-08-06 16:11
真速度啊。
作者:
taosicai
时间:
2013-08-06 16:20
回复
7#
davidbeckham921
是呀,本版高手如云。
热情周到。
再次
致
军礼
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2