期望:无法执行“/usr/bin/zypper patch”:没有这样的文件或目录
Posted
技术标签:
【中文标题】期望:无法执行“/usr/bin/zypper patch”:没有这样的文件或目录【英文标题】:expect: couldn't execute "/usr/bin/zypper patch": no such file or directory 【发布时间】:2020-08-26 16:57:02 【问题描述】:我写了一个期望脚本
vi /foo/force-zypper-patch.exp
cat /foo/force-zypper-patch.exp
#!/usr/bin/expect
set timeout 300
spawn "/usr/bin/zypper patch"
expect "Continue? [y/n/...? shows all options] (y): " send "y\r"
interact
但即使我有完整路径的 zypper,它也会失败:
SERVER1:~ # ssh SERVER2 "/usr/bin/expect -f /foo/force-zypper-patch.exp"
spawn /usr/bin/zypper patch
couldn't execute "/usr/bin/zypper patch": no such file or directory
while executing
"spawn "/usr/bin/zypper patch""
(file "/foo/force-zypper-patch.exp" line 4)
SERVER1:~ #
SERVER1:~ # ssh SERVER2 "which zypper"
/usr/bin/zypper
SERVER1:~ #
虽然我可以使用“zypper patch -y --with-interactive”来达到我的目的,但我真的很感兴趣,期待如何做到这一点!
【问题讨论】:
【参考方案1】:只需从spawn
行中删除引号。
spawn /usr/bin/zypper patch
目前,您正在尝试在/usr/bin
目录下执行命令zypper patch
,显然不存在这样的文件。
【讨论】:
以上是关于期望:无法执行“/usr/bin/zypper patch”:没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章