ケース関数をどのように呼び出すのですか?

ケース関数をどのように呼び出すのですか?

サーバーにログインするには、次のスクリプトがあります。このスクリプトを使用すると、選択したオプションに応じて、予想されるスクリプトを使用してホストに自動的にログインできます。ホストからログアウトして端末にログインします。

サーバーからログアウトした場合は、スクリプトを終了するのではなく、オプションの再入力を求める助けが必要です。

PS3='Please enter your choice: '

select options in Testserver1 Testserver2 Quit

do

    case $options in

        "Testserver1")
            echo "you chose SOX DS's"
            DSS=Testserver1
            break
            ;;
        "Testserver2")
            DSS=Testserver2
            break
            ;;
        "Quit")
           exit 0
           ;;
        *) echo invalid option
           exit
           ;;
    esac
done

        echo "$DSS"

expect -c "spawn /usr/bin/ssh -o StrictHostKeyChecking=no c1177243@$DSS \r\"; expect -re \"password:\"; send \"dummy@1233\n\"; expect -ex \"$\"; send \"sudo su - $env\n\"; expect \"c1177243\"; send \"dummy@1233\n\"; expect -ex \"$\"; send \"ls\r\"; expect -ex \"$\"; send \"cd splunk/etc/deployment-apps\r\"; interact"

}

ベストアンサー1

次のようにスクリプトをラップします。

while true
do
  ... your script here
done

すでに終了条件があるため、これは機能します。そうでない場合は、どのように失敗したかを説明してください。

おすすめ記事