Зачем ставить точку с запятой в одном, а не в другом?
Результат тот же
Код один
if [ "a" == "a" ]
then
echo "true"
fi
Код два
if [ "a" == "a" ];
then
echo "true";
fi
Точки с запятой во втором коде не нужны?
Когда необходимо ставить точку с запятой?
svn up; make
;;
используются для разделения совпадений в операторах case.;;
здесь требуется, не обязательно .... но;;
это не то же самое, что;
или; ;
, просто выглядит немного так. Одиночные точки с запятой;
работают как обычно в частях КОМАНД регистров.Ответы:
Точка с запятой нужна только в случае отсутствия конца строки:
Без точек с запятой вы получаете синтаксическую ошибку.
Я не понимаю ваш вопрос о кавычках. Можете быть более конкретными?
(И, между прочим, использование
=
вместо==
более портативного и POSIX-совместимого).источник
Точка с запятой часто используется, потому что некоторым людям (например, мне) нравится такой стиль:
Таким образом, если ключевое слово then помещено в строку условия, это необходимо, потому что начинается новая команда, написанная choroba.
Что касается кавычек в проверке условий, они часто используются с переменными, чтобы удостовериться, что исключение не происходит, если переменная не присвоена. Это более безопасный стиль и выглядит ненужным, но даже в программировании оболочки он время от времени заставляет программы работать, хотя содержимое не может быть присвоено переменным. Тогда команда все еще работает, потому что сравнивается пустая строка.
источник