如何为运行脚本后出现的辅助提示输入

时间:2015-05-23 13:56:14

标签: linux shell scripting solaris

$ cat messing_script.sh
#!/bin/sh
ext=`date '+%m%d%H%M'`
host=`hostname`
datalog=/export/admin/imsimta
dire=`date '+%m%d'`
datadir=$datalog/$host/$dire
if [ ! -d $datadir ]
then
        mkdir -p $datadir  2> /dev/null
fi
dir1=/opt/sun/comms/messaging64/sbin/
cd     $dir1
sleep     5
./imsimta qm
sleep 2
top > $datadir/$ext 2> /dev/null
exit

1 个答案:

答案 0 :(得分:1)

imsimta,如果它生成一个shell,可能支持运行字符串的选项。尝试以下之一:

./imsimta qm -c "top > $datadir/$ext"

./imsimta qm << EOF > $datadir/$ext
top 
EOF

第二种情况可能比echo top | ./imsimta qm更容易,但是heredoc可以根据需要更容易扩展。这些都不能保证有效,它们取决于imsimta的实施方式。我强烈建议您在有工作脚本之前不要丢弃stderr。