LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1527|回复: 2

expect脚本中如何调用其它脚本?

[复制链接]
发表于 2008-5-8 16:00:44 | 显示全部楼层 |阅读模式
#! /usr/local/bin/expect
spawn -noecho  su B
expect "assword:"
send "123456\n"
send "1.sh"
interact  
exit
在用户A下使用su命令到用户B,然后在B下执行脚本1.sh,但这样1.sh只是被打印到当前终端,需要再按回车才可以执行。
我需要在1.sh中写一些命令,以用户B的权限执行,然后执行完毕之后,再su回A用户,估计还要在1.sh中调用2.sh以实现su回用户A
等待大虾解惑,拜谢!
发表于 2008-5-8 20:28:15 | 显示全部楼层
send "1.sh"
改为
send "./1.sh\n"
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-9 09:32:45 | 显示全部楼层
Post by Ananias;1847268
send "1.sh"
改为
send "./1.sh\n"


我试过直接用spawn调用,Ananias兄这种方法也试过,\r也试过,但这样调用的结果是1.sh是expect脚本调用起来的,所以expect的子进程吧,仍旧没有B用户的权限,小郁闷
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表