@a000_000a

Что значит этот кейс?

Поясните, пожалуйста, что значит "-u=*|--user=*)" для чего "shift" и ";;"
case $i in
-u=*|--user=*)
USER="${i#*=}"
shift
;;
esac
  • Вопрос задан
  • 55 просмотров
Решения вопроса 1
3vi1_0n3
@3vi1_0n3
1) Это значит, что кейс должен отработать, если в переменной i значение, начинающееся со строки "-u=" или со строки "--user="
2) shift сдвигает позиционные параметры, удаляя самый первый. Например, скрипт вызван так:
script.sh 1 2 3
Позиционные пераметры при этом такие:
$1=1
$2=2
$3=3

После команды shift:
$1=2
$2=3
$3 пустой

3) ;; - это часть структуры case, означает конец списка команд, входящих в этот кейс.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы