販売スクリプトからopenvpnを起動する

販売スクリプトからopenvpnを起動する

VPNサービスに参加し、.ovpnサーバーごとに1つずつファイルが作成されました。私が望むのは、ロードするファイルを選択して接続を開始できるシェルスクリプトを作成することです。これは私のスクリプトです。

#!/bin/bash

TITLE="Start a VPN Connection"
FOLDER=$HOME"/ovpn/"
CHOICE=$(zenity --file-selection --title="Select your desired VPN config" --filename="$FOLDER" --file-filter="*.ovpn")
VPNFILE=$(basename "$CHOICE")

clear
sudo openvpn --cd "$FOLDER" --config "'$VPNFILE'" --verb 1 --auth-user-pass "auth.txt" --auth-nocache

これで問題は、このスクリプトを起動すると.ovpnファイルを選択できますが、スクリプトが次のエラーでクラッシュすることです。

Options error: In [CMD-LINE]:1: Error opening configuration file: 'Server-1.ovpn'

sudoの代わりにechoを使用してスクリプトの最後の行を編集すると、接続文字列が表示されます。その行をコピーして貼り付け、生成されたコマンドを手動で実行すると、接続が開始され、正しく実行されます。

シェルスクリプトでopenvpn接続を開こうとすると問題がありますか?

答え1

一重引用符を削除します"'$VPNFILE'"。それ以外の場合は、構成ファイルのファイル名の一部と見なされます。

関連情報