authenticate.sh
次のシェルスクリプトがあります。
#!/bin/bash
sshpass -p '$1' ssh $2@localhost
使って呼ぶ
bash authenticate.sh password username
ところで実行すると「権限が拒否されました。もう一度お試しください」というメッセージが表示されます。走れば
#!/bin/bash
sshpass -p 'password' ssh user@localhost
効果があります...
助けが必要ですか?
ベストアンサー1
単一のアポストロフィがスクリプトを台無しにしたようです。以下の説明を参照してください。
これは期待どおりに機能します。
#!/bin/bash
sshpass -p "$1" ssh "$2"@localhost
これは、単一のアポストロフィのために変数を内部的に拡張することができないためです。