使用中にパスワードを保存しました。pass
それに基づいて、Cisco Anyconnectを使用してVPN接続プロセスを自動化したいと思います。 VPNが正常に動作していることを確認しました。スクリプト私が使用したいのは次のとおりです。
pass=$(pass branch/key)
vpn -s connect vpn.server.host << "EOF"
0
username
"$pass"
y
exit
EOF
として保存したと仮定すると、.connectvpn
VPNsource .connectvpn
トンネルを開始して接続を確立する必要があります。
ファイルから使用したい変数(pass
)を削除し、実際のパスワードを5行目に入力すると機能することがわかります。私が経験している問題はbash変数アプローチにあります。
答え1
問題は、区切り文字を引用することです"EOF"
。ここで文書の区切り文字を引用すると、本文ではパラメータ拡張が実行されないため、パスワードにはリテラル値があります"$pass"
。EOF
引用符なしで区切り文字を使用してみてください。