カスタムプロンプトを作成するには? [閉鎖]

カスタムプロンプトを作成するには? [閉鎖]

(この質問は解決されました。担当者のためにこの質問を編集しています。)

プロンプトを作成するのに助けが必要です。コマンドを実行する方法を知っていますが、次のことをしたいと思います。

V-PROMPT:>

私もできることを知っています

read -p 'V-PROMPT:>'

しかし、次のようなコマンドを入れることができるようにしたいです。

V-PROMPT:>help

V-PROMPT HELP v1.0
help - displays help page
[thing 2]
[thing 3]

その他など

これはこれまで私のスクリプトです。

#!/bin/bash

read -p 'V-PROMPT->'

if [[ "$1" == "help" ]]; then
echo "V-PROMPT HELP v0.1"

EOF

if [[ "$1" == "ver" ]]; then
echo "V-PROMPT INDEV v0.1"

fi;

これを実行すると、次のような結果が得られます。

/home/{User@penguin}/bin/vprompt: 行 14: 構文エラー: 予期しないファイルの終わり

ベストアンサー1

いくつかの注意:

  1. 重要な部分REPL~であるリング。コードをwhile true; do ...; doneループにラップできます。
  2. 変数を指定しない場合readコマンド、ユーザーの入力はREPLY変数に保存されます。
  3. case長いif-elif-elif ...ステートメントの代わりにステートメントを使用できます。
#!/bin/bash
while true; do
    read -p 'V-PROMPT-> '
    case "$REPLY" in
        help)
            echo "V-PROMPT HELP v0.1"
            ;;
        ver)
            echo "V-PROMPT INDEV v0.1"
            ;;
        quit)
            echo bye
            break
            ;;
    esac
done

おすすめ記事