私は初心者ですが、ユーザーがオプションのリストから複数のオプションを選択できるようにしたいスクリプトを作成したいと思います。
基本的に私が望むのは、次の例に似たものです。
#!/bin/bash
OPTIONS="Hello Quit"
select opt in $OPTIONS; do
if [ "$opt" = "Quit" ]; then
echo done
exit
elif [ "$opt" = "Hello" ]; then
echo Hello World
else
clear
echo bad option
fi
done
(http://www.faqs.org/docs/Linux-HOWTO/Bash-Prog-Intro-HOWTO.html#ss9.1から入手)
ただし、私のスクリプトにはさらにオプションがあり、複数の選択を許可したいと思います。だからこのようなもの:
1)オプション1
2)オプション2
3)オプション3
4)オプション4
5)完了
彼らが選択したものについてのフィードバックを持つことも素晴らしいでしょう。例えば、既に選択したものの隣にプラス記号が付いています。たとえば、「1」を選択した場合、ページをクリアして再印刷します:
1) Option 1 +
2) Option 2
3) Option 3
4) Option 4
5) Done
次に、「3」を選択した場合:
1) Option 1 +
2) Option 2
3) Option 3 +
4) Option 4
5) Done
また、彼らが再び選択した場合(1)オプションを「選択解除」したい:
1) Option 1
2) Option 2
3) Option 3 +
4) Option 4
5) Done
そして最後にDoneが押されたとき、プログラムが終了する前に表示されるように選択されたもののリストが欲しいです。例えば、現在の状態が:
1) Option 1
2) Option 2 +
3) Option 3 +
4) Option 4 +
5) Done
5を押すと印刷されます。
Option 2, Option 3, Option 4
...そしてスクリプトは終了します。
だから私の質問-これはbashで可能ですか?もしそうなら誰でもコードサンプルを提供できますか?
どんなアドバイスも大歓迎です。