Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Специальные параметры интерпретатора команд

Читайте также:
  1. B.2.Описание дополнительных команд для семейства PIC 16СХХ
  2. B1. Опис команд PIC 12CXX і PIC 16C5X
  3. C) жеке командалар немесе команда топтары көп рет қайталанатын болса
  4. C. Движение информации и ее трансформация от исходной в командную
  5. I. Диагностика: понятие, цели, задачи, требования, параметры
  6. I. Параметры абзацазадаются командойФормат→Абзац
  7. PS, TOP командаларымен процесстерді тексеру. Процестермен жұмыс істеуге арналған командалардың түрлері.
  8. Stty, tset командаларын тағайындау және сипаттау. Қатқыл дискімен жұмыс істеу командалары. /etc/passwd, /etc/shadow және /etc/group файлдары.
  9. Swap MACRO a,b; a,b - параметры макро (ячейки памяти)
  10. А26. И рыночная, и командная экономики

 

Интерпретатор присваивает (автоматически) значения некоторым параметрам, обозначаемым одним из следующих символов:

# - количество позиционных параметров;

* - значения позиционных параметров в виде строки "$1 $2 $3 …";

@ - значения позиционных параметров;

$ - идентификатор текущего процесса (Shell-процесса);

? - десятичное значение, возвращаемое последней выполненной командой;

- - флаги, указанные при запуске Shell

! - идентификатор последнего запущенного процесса.

 

Команда test

 

Встроенная команда test интерпретатора команд sh используется в следующих случаях:

· для сравнения строк и чисел;

· для проверки состояния файла;

· в операторе if.

 

Формат команды:

 

test < выражение >

 

Команда test вычисляет <выражение> и, если значение выражения - ИСТИНА, то возвращает код завершения 0 (True); иначе – ненулевое значение (false).

 

 

Cравнение строк

 

Формат команды test для сравнения строк:

 

test строка1 = строка2 # проверка на равенство

test строка1!= строка2 # проверка на неравенство

 

 

Пример_1: проверка на пустой аргумент команды

 

% test "$1"=""

 

 

Cравнение чисел

 

Формат команды test для сравнения чисел:

 

test число1 < оператор > число2

 

Операторы указываются в соответствии со следующей таблицей:

 

Наименование оператора Математический вид оператора Оператор в команде test
равно -eq
не равно -ne
меньше < -lt
меньше или равно -le
больше > -gt
больше или равно -ge

 

 

Пример_1: проверка кода возврата последней выполненной команды

на 0.

 

test "$?" -eq 0

 

Пример_2: проверка текущей даты на 20 число

 

test "`date +%d`" -eq 20

 

Здесь date +%d – команда получения текущей даты, в которой форматная строка (+%d) ограничивает вывод команды только числом.

 

 

Проверка состояния файла

 

В случае использования команды test для проверки состояния файла < выражение > может состоять из следующих примитивов:

 

-r файл - истина, если файл существует и доступен для чтения;

-w файл - истина, если файл существует и доступен для записи;

-x файл - истина, если файл существует и доступен для выполнения;

 

-f файл - истина, если файл существует и является обычным файлом;

-d файл - истина, если файл существует и является каталогом;

-c файл - истина, если файл существует и является специальным символьно-ориентированным файлом;

-b файл - истина, если файл существует и является специальным блок-ориентированным файлом.

 

 

Управляющие конструкции высокого уровня

 




Дата добавления: 2014-12-19; просмотров: 48 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.008 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав