shell查看db2表空间
环境:Redhat Linux AS4 + DB2 V9.5Bash shell文件这样写:
db2 list tablespaces| grep MOIA44
执行打印结果:
Name = MOIA44
但是换成这样写
ifsuc=`db2 list tablespaces| grep MOIA44`
echo [${ifsuc}]
执行打印结果:
[]
发现ifsuc为空了。如果不加grep ,即ifsuc=`db2 list tablespaces ` ,能够正确打印,ifsuc为所有表空间。加了就为空,不知道什么原因。是不是db2执行命令时会fork一个子进程,grep 实际上是对父进程的grep,而父进程没有输出,所以导ifsuc为空。
不知道是不是这样的原因,请高人指点。
我现在采用的是将db2执行结果重定向到文件,然后从文件读。
页:
[1]