我正在尝试使用Xcode上的按钮运行bash脚本。这个bash脚本通过ssh将命令发送到Raspberry Pi,后者使用sshpass来访问它们。问题是我收到此错误:
test.sh: line 7: sshpass: command not found
我尝试通过双击脚本来运行脚本,该脚本成功完成了,这只是对Raspberry Pi进行了ping操作。我还确保已安装sshpass。最后,我尝试了Google搜索,但是找不到解决方法。
这是我要运行的bash脚本:
#!/bin/bash
USERNAME="pi"
HOSTS="172.16.39.101"
SCRIPT="echo hello"
for HOSTNAME in ${HOSTS} ; do
sshpass -p 'raspberry' ssh -l ${USERNAME} ${HOSTNAME} "${SCRIPT}"
done
按钮的代码如下:
@IBAction func shutdownAll(_ sender: Any) {
let script = "/Users/user/Desktop/test.sh"
let task = Process()
task.launchPath = "/bin/bash"
task.arguments = ["-c", script]
task.launch()
临时目标是对Raspberry Pi进行ping操作,以便可以在其上运行不同的命令,但是,如果没有sshpass,我将无法执行此操作。其次,我之所以现在将其循环,是因为我将通过ssh向多个Raspberry Pi发送命令。我没办法做什么。