OpenVPNが提供する環境変数をインラインで使用しようとしています。
これはうまくいきます:
OpenVPN クライアントの構成:
[...]
up /tmp/script.sh
[...]
/tmp/script.sh:
#!/bin/bash
echo $ifconfig_remote
ただし、これをインラインで実行しようとすると、構成ファイルでは機能しません。
OpenVPN クライアントの構成:
[...]
up '/bin/echo $ifconfig_remote'
[...]
印刷を使用したり、バックティック$ifconfig_remote
で梱包してみました。${ifconfig_remote}
外部スクリプトを使用せずに環境変数にアクセス/印刷する方法はありますか?
ベストアンサー1
exec()
OpenVPNが与えられたコマンドをシェルに渡すのではなく、直接実行するように聞こえます。その結果、シェル補間は得られません。これは、あなたの場合、変数が文字通り使用されることを意味します。
スクリプトを使用したくない場合は、明示的にシェルを呼び出してみてください。
up '/bin/sh -c "echo $ifconfig_remote"'