Test (UNIX)

Test (UNIX)

test — файла и сравнения значений. Возвращает код возврата 0 (истина) или 1 (ложь) в зависимости вычисления выражения expr. Выражения могут быть как унарными, так и бинарными. Унарные выражения часто используются для проверки статуса файла. Также допустимо сравнение чисел и строк.

Использование

  • test [expr]
  • test {--help,--version}

Обычно используется в несложных shell-скриптах для проверок разного рода. Следующий пример удалит обычный файл text.txt если он существует, либо выведет сообщение что данного файла нет.

#!/bin/sh
if test -f test.txt
then
  rm test.txt
else
  echo 'файл test.txt не найден'
fi

Для сокращения кода сценария используют парный оператор '[' как синоним test

#!/bin/sh
if [ -f test.txt ]
then
  rm test.txt
else
  echo 'файл test.txt не найден'
fi

Параметры запуска

  • -b file — истина, если file существует и является специальным блочным устройством.
  • -c file — истина, если file существует и символьное устройство.
  • -d file — истина, если file существует и каталог.
  • -e file — истина, если file существует.
  • -f file — истина, если file существует и обычный файл.
  • -g file — истина, если file существует и имеет установленным групповой идентификатор (set-group-id).
  • -k file — истина, если file имеет установленным «sticky» бит.
  • -L file — истина, если file существует и символьная ссылка.
  • -p file — истина, если file существует и является именнованым каналом (pipe).
  • -r file — истина, если file существует и читаем.
  • -s file — истина, если file существует и имеет размер больше чем ноль.
  • -S file — истина, если file существует и сокет.
  • -t [fd] — истина, если fd открыт на терминале. Если fd пропущен, по умолчанию 1 (стандартное устройство вывода).
  • -u file — истина, если file существует и имеет установленным бит пользователя (set-user-id).
  • -w file — истина, если file существует и записываем.
  • -x file — истина, если file существует и исполняем.
  • -O file — истина, если file существует и его владелец имеет эффективный идентификатор пользователя.
  • -G file — истина, если file существует и его владелец имеет эффективный идентификатор группы.
  • file1 -nt file2 — истина, если file1 новее (дата модификации) чем file2.
  • file1 -ot file2 — истина, если file1 старее чем file2.
  • file1 -ef file2 — истина, если file1 и file2 имеют то же устройство и номер inode .
  • -z string — истина, если длина string равна нулю.
  • -n string string — истина, если длина string не ноль.
  • string1 = string2 — истина, если, если строки равны.
  • string1 != string2 — истина, если строки не равны.
  • ! expr — истина, если выражение expr ложь.
  • expr1 -a expr2 — истина, если оба выражения expr1 и expr2 истина.
  • expr1 -o expr2 — истина, если или expr1 или expr2 истина.
  • arg1 OP arg2 -eq, -ne, -lt, -le, -gt, или -ge — эти арифметические бинарные операции возвращают истину, если arg1 равно, не равно, меньше чем, меньше чем или равно, больше чем, или больше или равно чем arg2, соответственно. arg1 и arg2 могут быть положительными целыми, отрицательными целыми, или специальными выражениями -l string, которые вычисляют длину string.

Ссылки

  • test(1) – страница помощи man в GNU Coreutils)
  • test(1) – страница помощи man в test(1) – страница помощи man в
Некоторые командной строки • Все программы Файловые системы  ·  ·  ·  ·  · grub · lilo ·  · mkreiserfs ·  ·  ·  · Файлы и каталоги cat ·  ·  ·  ·  ·  ·  ·  ·  ·  ·  · file ·  · ln ·  ·  ·  ·  · od ·  ·  ·  ·  · Процессы  · crontab ·  ·  ·  · nice ·  ·  ·  ·  ·  ·  · time ·  ·  · Пользователи  ·  ·  ·  ·  · passwd ·  ·  ·  · w ·  · who ·  · write Сеть ftp ·  ·  ·  ·  ·  ·  ·  · ssh ·  · Тексты  ·  ·  ·  · ex · expand · unexpand ·  · head ·  · join ·  ·  ·  · pr ·  ·  ·  ·  ·  ·  · wc · Командная строка  ·  ·  · bind ·  ·  ·  ·  · test · true · Поиск  ·  ·  · whereis · Разное  ·  ·  · date · help · lp · man · history ·  ·  ·  · yes

Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Полезное


Смотреть что такое "Test (UNIX)" в других словарях:

  • Test (unix) — test est une commande Unix qui permet de créer des expressions conditionnelles. Sommaire 1 Syntaxe 2 Description 3 Fonctions 3.1 Fonctions de chaînes de caractères …   Wikipédia en Français

  • Test (Unix) — test is a Unix command that evaluates conditional expressions.yntax test expression or [ expression ] DescriptionThe test command evaluates the expression parameter. In the second form of the command, the [ ] (brackets) must be surrounded by… …   Wikipedia

  • Test (Unix) — Pour les articles homonymes, voir Test. test est une commande Unix qui permet de créer des expressions conditionnelles. Sommaire 1 Syntaxe 2 Description …   Wikipédia en Français

  • test — test  UNIX утилита для проверки типа файла и сравнения значений. Возвращает код возврата 0 (истина) или 1 (ложь) в зависимости вычисления выражения expr. Выражения могут быть как унарными, так и бинарными. Унарные выражения часто… …   Википедия

  • Test — test  UNIX утилита для проверки типа файла и сравнения значений. Возвращает код возврата 0 (истина) или 1 (ложь) в зависимости вычисления выражения expr. Выражения могут быть как унарными, так и бинарными. Унарные выражения часто… …   Википедия

  • Test — Test, TEST or Tester may refer to:In science:* Experiment, part of the scientific method * Test (biology), the shell of sea urchins and certain microorganisms * Test method, a definitive procedure that produces a test result * Chemical test, a… …   Wikipedia

  • UNIX-Kommandos — Unix Systeme zeichnen sich durch eine Vielzahl von Kommandos aus, mit denen sich über eine Shell das Betriebssystem bedienen lässt. Die Syntax dieser Kommandos weicht unter den verschiedenen Systemen voneinander ab. Es existieren die beiden… …   Deutsch Wikipedia

  • Unix-Befehle — Unix Systeme zeichnen sich durch eine Vielzahl von Kommandos aus, mit denen sich über eine Shell das Betriebssystem bedienen lässt. Die Syntax dieser Kommandos weicht unter den verschiedenen Systemen voneinander ab. Es existieren die beiden… …   Deutsch Wikipedia

  • Unix-Kommando — Unix Systeme zeichnen sich durch eine Vielzahl von Kommandos aus, mit denen sich über eine Shell das Betriebssystem bedienen lässt. Die Syntax dieser Kommandos weicht unter den verschiedenen Systemen voneinander ab. Es existieren die beiden… …   Deutsch Wikipedia

  • Unix Kommandos — Unix Systeme zeichnen sich durch eine Vielzahl von Kommandos aus, mit denen sich über eine Shell das Betriebssystem bedienen lässt. Die Syntax dieser Kommandos weicht unter den verschiedenen Systemen voneinander ab. Es existieren die beiden… …   Deutsch Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»