Dmitry Telenkov 11 ماه پیش
والد
کامیت
4ff2bf2330
1فایلهای تغییر یافته به همراه16 افزوده شده و 1 حذف شده
  1. 16 1
      bash/options_test.sh

+ 16 - 1
bash/options_test.sh

@@ -2,6 +2,14 @@
 
 usage() {
   echo "Скрипт $(basename $0) предназначен для демонстрации возможностей getopts."
+  echo ""
+  echo "Использование: `basename $0` -abef -c C -d D"
+  echo -e " \033[1mОпции:\033[0m"
+  echo "  -a | -b Две опции для одного действия"
+  echo "  -c  Опция с аргументом"
+  echo "  -d  Еще опция с аргументом"
+  echo "  -e  Опция без аргумента"
+  echo "  -f  Еще опция без аргумента"
 }
 
 if [ $# -eq 0 ] ; then
@@ -11,7 +19,14 @@ fi
 while getopts "abc:d:ef" Option
 do
   case $Option in
-    a | b )
+    a | b ) echo "Действие 1: опция - $Option. Номер опции: $OPTIND. Аргумент: $OPTARG";;
+
+    * ) echo "Выбран недопустимый ключ."
+        usage
+        exit $E_OPTERROR;; # По-умолчанию
 
   esac
 done
+shift $(($OPTIND - 1))
+
+exit 0