VPN のオン/オフを切り替えるシェル スクリプト

VPN のオン/オフを切り替えるシェル スクリプト

私は現在、ホットスポットシールドUbuntu 20.04.3 でターミナルを使用して、hotspotshield connect US(米国のサーバーに)接続したりhotspotshield disconnect切断したりします。

この機能を1つのキーにマッピングして、VPNのオン/オフを切り替えたいと思います。 を使用するとhotspotshield status、次のようになります。

Client is running    : no
VPN connection state : disconnected

connectクライアントが実行中でない場合、またはコマンドを実行するかどうかを評価しますdisconnect。 の出力をhotspotshield status文字列として渡し、クライアントが実行中でない場合には出力に文字列「no」が表示されないため、「no」を検索することでこれを行うことを計画しました。しかし、出力を解釈するのに問題があります。

これまでのスクリプトは次のとおりです (bash でこのようなことは試したことがないことに注意してください)。

#!/bin/bash

status=$(hotspotshield status)

if [[status =~ "no"]]; then
    hotspotshield connect US
else; then
    hotspotshield disconnect

何かアドバイスがあれば、ぜひお願いします!

答え1

構文エラーが修正されましたが、次のようになります:

#!/bin/bash

status=$(hotspotshield status)

if [[ "$status" =~ no ]]; then
    hotspotshield connect US
else
    hotspotshield disconnect
fi

使ってくださいシェルチェック次回ここに投稿する前に。ありがとうございます。

関連情報