Из Википедии, бесплатной энциклопедии
  (Перенаправлено с True (Unix) )
Перейти к навигации Перейти к поиску

В Unix-подобных операционных систем , trueи falseявляются командами, единственной функцией которых является всегда возвращаются с заданным статусом выхода . Программисты и сценарии часто используют статус выхода команды для оценки успеха (нулевой статус выхода) или отказа (ненулевое значение) команды. trueИ falseкоманды , представляют собой логические значения из командного успеха, потому что истинные возвращает 0, и ложное возвращение 1. [Примечание 1]

Использование [ править ]

Команды, как правило , используются в условных операторах и петли из сценариев оболочки . Например, следующий сценарий оболочки повторяет цикл echo hello до тех пор, пока не будет прерван:

в то время как  правда ,  эхо, привет, сделано

Команды можно использовать для игнорирования успеха или неудачи последовательности других команд, как в примере:

сделать… &&  ложь

Настройка пользователя для входа в оболочку для ЛЖИ , в / и т.д. / пароле , эффективно лишает их доступ к интерактивной оболочке, но их счет может все еще быть справедлив и для других услуг, таких как FTP . (Хотя / sbin / nologin , если он доступен, может быть более подходящим для этой цели, поскольку он печатает уведомление перед завершением сеанса.)

Программы не принимают "актуальных" параметров; в версии GNU стандартный параметр --helpотображает сводку использования и --versionверсию программы.

Пустая команда [ править ]

Истинная команда иногда заменяются на очень похожей команде нуля, [1] записываются в виде одного толстого кишечника ( :). Команда null встроена в оболочку и поэтому может быть более эффективной, если true - это внешняя программа ( true - обычно встроенная функция оболочки). Мы можем переписать верхний пример, используя :вместо true:

while  : do  echo привет сделано

Пустая команда может принимать параметры, которые игнорируются. Он также используется в качестве не-оп команды манекена для побочных эффектов , таких как назначение значения по умолчанию для оболочки переменных через ${parameter:=word}форму расширения параметров. [2] Например, из bashbug скрипт сообщения об ошибке для Bash :

 : $ { TMPDIR : = / TMP }
 : $ { EDITOR = $ DEFEDITOR }
 : $ { USER = $ { LOGNAME - ` Whoami ` }}

См. Также [ править ]

Заметки [ править ]

Ссылки [ править ]

  1. ^ "Двоеточие" , Базовые спецификации группы Open, выпуск 7 , IEEE std 1003.1-2008
  2. ^ Купер, Мендель (апрель 2011), "команда Null", Advanced Bash-Scripting Guide, 6,3 , проектная документация Linux , извлекаться 2011-08-04

Внешние ссылки [ править ]

  • true: return true value - Справочник по командам и служебным программам, Единая спецификация UNIX , выпуск 7 от The Open Group
  • false: return false value - Справочник по командам и служебным программам, Спецификация Single UNIX , Выпуск 7 от The Open Group

Страницы руководства [ править ]

  • true (1) : ничего не делать, успешно - справочник GNU Coreutils
  • false (1) : ничего не делать, неудачно - справочник GNU Coreutils
  • true (1) : Вернуть истинное значение - страница справочника FreeBSD
  • false (1) : вернуть ложное значение - страница руководства FreeBSD