expect spawn无法同一个进程里执行?

#!/usr/bin/expect
spawn sudo pwd
expect "password"
sent "mypassword\n"

程序到这里,应该是已经获得了sudo运行免密码,也就是第一次sudo pwd的时候,我用expect输入了密码mypassword,确实验证过了,但是我继续sudo ls的话,他就提示还要输入sudo密码了。

#!/usr/bin/expect
spawn sudo pwd
expect "password"
sent "mypassword\n"
spawn sudo ls   #这里不行了,又弹出要输入密码了,这是为何?

第一个spawn开启了一个进程输入了密码获得了sudo权限,如何让第二个spawn和第一个spawn是同一个进程啊?我想要一只免密码sudo

阅读 1.5k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题