Bashスクリプトの終了ケース後のSSH終了

Bashスクリプトの終了ケース後のSSH終了

だから、次の標準スクリプトがあります。

    #!/bin/bash
    PS3='Please enter your choice: '
    options=("option 1" "Option 2" "Option 3" "Quit")
    select opt in "${options[@]}"
    do
        case $opt in
            "Option 1")
                echo "you chose choice 1"
                ;;
            "Option 2")
                echo "you chose choice 2"
                ;;
            "Option 3")
                echo "you chose choice 3"
                ;;
            "Quit")
                break
                ;;
            *) echo invalid option;;
        esac
    done

ただし、SSHを介してスクリプトを実行して「終了」オプションを選択すると、SSHも終了します。何が問題を引き起こす可能性がありますか?スクリプトを終了してSSHで作業を続けたいと思います。

問題は、以下で説明する.bash_aliasesファイルにあります。私はexec台本の前に置いた。それを削除してコマンドを実行すると、すべてがうまくいきます。

ベストアンサー1

説明した動作によれば、次のようにスクリプトを実行するように聞こえます。

$ ssh remote picker.bash

はい

sshリモートシステムに接続すると、期待どおりに機能します。主にスクリプトが完了した後もリモートサーバーに残ります。

リモートコンピュータとラップトップという2台のコンピュータがあるとしましょう。ラッピーには「L」を、リモートには「R」を使用します。

L$ ssh remotey

R$ ./picker.bash
1) option 1
2) Option 2
3) Option 3
4) Quit
Please enter your choice: 4

R$

sshただし、このようにスクリプトを実行すると、説明された端末が消える動作が発生します。

L$ ssh remotey ./picker.bash
1) option 1
2) Option 2
3) Option 3
4) Quit
Please enter your choice: 4

L$

おすすめ記事