当前位置: 技术问答>linux和unix
脚本执行完不退出,请大牛给看看
来源: 互联网 发布时间:2017-05-06
本文导语: a.sh: #非root用户登录,用root用户去执行 c.sh b.sh $dev_dir $root_pwd c.sh b.sh #!/usr/bin/expect set path [lindex $argv 0] set password [lindex $argv 1] set filename [lindex $argv 2] spawn su root -c "$path/$filename" expect { "*:" ...
a.sh:
b.sh
c.sh
奇怪的现象:当脚本执行完 echo: SUCCESS就停了,一直在等待状态。
直接用root用户去执行c.sh 不会出现这样的情况。此脚本必须要root用户才能执行。
在此先谢了
#非root用户登录,用root用户去执行 c.sh
b.sh $dev_dir $root_pwd c.sh
b.sh
#!/usr/bin/expect
set path [lindex $argv 0]
set password [lindex $argv 1]
set filename [lindex $argv 2]
spawn su root -c "$path/$filename"
expect {
"*:"
{
send "$passwordn"
}
}
expect eof
interact
c.sh
各种安装脚本,:包括安装数据库 ,jdk,tomact,还有一些自己的产品
最后一行:
echo: SUCCESS
奇怪的现象:当脚本执行完 echo: SUCCESS就停了,一直在等待状态。
直接用root用户去执行c.sh 不会出现这样的情况。此脚本必须要root用户才能执行。
在此先谢了
|
应该是b.sh的问题. interact这个词是必需的吗?
|
在 SUCCESS 下一行加个 exit 看看.
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。