我正在写一个bash脚本,它将连接到我的远程机器,然后运行一些命令,其中一个是vncserver:1,但是这个命令需要输入密码。我怎么能在我的shell脚本中做到这一点? (我只需要运行脚本,不需要输入密码)
这是我的剧本:
ssh -i $pem -o StrictHostKeyChecking=no -o 'IdentitiesOnly yes' admin@$ip -f '
pkill vnc ;
vncserver :1 ;
'
答案 0 :(得分:2)
谢谢大家, 现在好了:
ssh -i $pem -o StrictHostKeyChecking=no -o 'IdentitiesOnly yes' admin@$ip -f '
pkill vnc ;
expect -c "
spawn vncserver :1;
expect -nocase \"password:\" {
send \"$pass\r\";
expect -nocase \"Verify:\" {
send \"$pass\r\";
expect -nocase \"Would you like to enter a view-only password \(y\/n\)\?\" {
send \"n\r\";
expect eof }; }; interact } ;
"
'