Hansからの
フリーホイール' 回答 —ありがとう!—呼び出しを少し合理化し、ターミナルをバイパスして、macOSステータスメニューのAnyConnectアイコンで終わるようにしたかったのです。(私はMojave 10.14.6を使用しています。)
まず、ターミナルを起動してから、AnyConnectアプリケーションバイナリのディレクトリに移動します。
$ cd "/Applications/Cisco/Cisco AnyConnect Secure Mobility Client.app/Contents/MacOS"
元のバイナリのコピーを作成します。
$ sudo cp \
"Cisco AnyConnect Secure Mobility Client" \
"Cisco AnyConnect Secure Mobility Client.orig"
最後に、シェルスクリプトで初期ファイルを上書きVPN host
し、VPNホスト名またはアドレス、user
およびpa$$w0rd
資格情報に変更します。
$ sudo cat > "Cisco AnyConnect Secure Mobility Client" <<'SCRIPT'
#!/bin/sh
# The AnyConnect vpn utility takes some options and commands or
# else runs interactively. The help command shows that -s reads
# a script from STDIN and that connect takes a host as argument.
# connect gets the username and password from STDIN. We will
# supply them from a heredoc with the -s option.
/opt/cisco/anyconnect/bin/vpn -s \
connect "VPN host" <<'CREDENTIALS'
user
pa$$w0rd
CREDENTIALS
exec "$0.orig" # invoke the original app
SCRIPT
これで、通常どおりSpotlightまたはFinderからAnyConnectを実行できるようになります。最初にスクリプトが接続され、次にアプリケーションバイナリに実行が渡されるので、デスクトップのステータスメニューにAnyConnectが表示されます。