[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: логическое И (and) error: line 27: [: пропущен `]'



Dmitrii Kashin -> debian-russian@lists.debian.org  @ Tue, 03 Dec 2013 21:58:01 +0400:

 DK> Так вот, конструкция if-then-else ведёт свою родословную от языка
 DK> lisp. В классическом варианте она описывается следующем образом:

А это где-то написано, что шелловский if растет из лисповского?  Ну, в
смысле более близкий родственник лисповскому, чем if в любом другом
языке программирования?

 DK> Что же касается совершенно справедливого вопроса о необходимости точки с
 DK> запятой перед if. Всё дело в том, что любой из трёх параметров может
 DK> быть представлен как одной командой, так и блоком команд.

Я бы сказал, что дело не в этом, а ровно в том, что по идеологии шелла
then имеет полное право быть аргументом команды, которая условие if (как
у тебя в одном из примеров).  Поэтому нельзя считать, что
команда-аргумент заканчивается там, где следует ключевое слово then,
надо ее закончить явно.


Reply to: