Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 2029
Благодарности: 704

Профиль | Отправить PM | Цитировать


Теперь по поводу Вашего сценария. Вы всё-аки не до конца внесли те правки, о которых я Вам говорил.

Оператору "if" не нужны круглые скобки. Это не язык "С". Конечно, во многих случаях они не мешают, но раз уж мы с Вами начали учиться писать сценарии, давайте сразу осваивать хороший стиль программирования.

Поэтому, убираем скобки в "if ([ ! -d $TARGET_DIR ])". Получается "if [ ! -d $TARGET_DIR ]".
Выражение "if !([ ! -f $PATHS_FILE ])" ошибочно в принципе, поскольку содержит ссылку на историю команд (в сценарии она недоступна).
Вполне вероятно, что эта команда может быть выполнена в сценарии (именно благодаря недоступности истории команд). Честно признаться, никогда не проверял. Но она совершенно точно не может быть исполнена в интерактивном режиме.
Так что заменяем Ваш вариант на простой и понятный "if [ ! -f $PATHS_FILE ]".

-------
Господа! Убедительная просьба не обращаться за консультациями в ЛС. Поверьте, создать ветку в соответствующем разделе форума гораздо эффективнее.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:50, 28-10-2012 | #14