bashスクリプトは入力ワードに基づいてPythonスクリプトを起動します。

bashスクリプトは入力ワードに基づいてPythonスクリプトを起動します。

2つのPythonスクリプト(direct.pyとnat.py)があり、私の入力に基づいて実行するPythonを選択するbashスクリプトを作成したいと思います。

また、これらのpyスクリプトを手動で実行すると、入力オプション(0 ... 8、h、およびq)があります。 "q"を押すとsys.exit()が発生します。

たとえば、

./start.sh and output should be something like:
Chose your mode: (if type nat)
python3 nat.py

これでPythonスクリプトが表示され、qを押すとbash選択オプションが返されます。

ベストアンサー1

無限ループを設定し、ユーザーに入力するように求められます。入力がオプションの1つと一致する場合(ここで偽装)、そのオプションを実行します。間違ったオプションを入力した場合は、終了したい場合はお知らせください。ユーザーが適切なPythonスクリプトを終了した場合(または無効なオプションを入力した場合)、ループに戻り、オプションを再選択します。

#!/bin/sh

while :
do
  printf 'Choose your mode (nat or direct) or q to quit: '
  read REPLY
  case $REPLY in
    (nat)       echo python3 nat.py
        ;;
    (direct)    echo python3 direct.py
        ;;
    (q)         break
        ;;
    (*)         echo Unknown option
        ;;
  esac
done

おすすめ記事