我正在编写一个 shell 脚本,其中包含以下行 -
sshpass -p "pwd" ssh -t hostname@$ip1 ' cd /path/to/home/oflops/cbench; ./cbench -c $ip2 -p 6633 -m 1000 -l 10 -M 1000 -s 1 -t; ' >> file
上面的行在 shell 中工作正常,但在脚本中不起作用。请帮忙,我是脚本编写的新手,无法找出我的错误。
像这样运行你的命令:
sshpass -p "pwd" ssh -t hostname@$ip1 "cd /path/to/home/oflops/cbench; ./cbench -c $ip2 -p 6633 -m 1000 -l 10 -M 1000 -s 1 -t;" >> file
即为您的命令使用双引号而不是单引号,以便能够扩展变量,例如$ip2
“sshpass”命令未在 bash 脚本中运行。我将上面的脚本更改如下以使其运行 -
`sshpass -p "pwd" ssh -o StrictHostKeyChecking=no hostname@$ip1 "cd /path/to/home/oflops/cbench; ./cbench -c $ip2 -p 6633 -m 1000 -l 10 -M 1000 -s 1 -t;" >> file`