2015-06-14 80 views
1

我想创建一个菜单脚本,当选择该选项时将执行一个命令。这是我迄今为止所拥有的。创建一个菜单脚本

#!/bin/bash 

PS3='Please enter you choice: ' 
options=("Option 1 - File Directory?" "Option 2 - Run MyScript?" "Option 3 - ?" "4 - Quit") 
Select opt in "${options[@]}" 
do 
     case $opt in 
      "Option 1 - File Directory?") 
       echo "you chose option 1" 
       ;; 
      "Option 2 - Run MyScript?") 
       echo "you chose option 2" 
       ;; 
      "Option 3 - ?") 
       echo "you chose option 3" 
       ;; 
      "Quit") 
       break 
       ;; 
      *) echo invalid option;; 
     esac 
done 
+0

看看http://www.shellcheck.net/ – Cyrus

+0

改'选择'到'选择'和''退出''到'“4 - 退出”或其他 – Jahid

+0

我需要脚本如果选择选项1,则显示当前目录,如果选择选项2,也运行我创建的shell脚本。我该怎么做和/或什么是命令? –

回答

1

变化Selectselect"Quit""4 - Quit"case或以其他方式。

您的代码编辑:

PS3='Please enter you choice: ' 
options=("File Directory?" "Run MyScript?" "?" "Quit") 
select opt in "${options[@]}" 
do 
     case $opt in 
      "File Directory?") 
       echo "you chose option 1" 
       ;; 
      "Run MyScript?") 
       echo "you chose option 2" 
       ;; 
      "?") 
       echo "you chose option 3" 
       ;; 
      "Quit") 
       break 
       ;; 
      *) echo invalid option;; 
     esac 
done 

您可以检查你的shell脚本with shellcheck错误。