Шпаргалка по bash


Перечень базовых конструкций bash.

Отдельное спасибо #ite за статьи:

Шпаргалка BASH.pdf

Основные команды

  • break выход из цикла for, while или until
  • continue выполнение следующей итерации цикла for, while или until
  • echo вывод аргументов, разделенных пробелами, на стандартное устройство вывода
  • exit выход из оболочки
  • export отмечает аргументы как переменные для передачи в дочерние процессы в среде
  • hash запоминает полные имена путей команд, указанных в качестве аргументов, чтобы не искать их при следующем обращении
  • kill посылает сигнал завершения процессу
  • let производит арифметические операции над числами и переменными
  • pwd выводит текущий рабочий каталог
  • read читает строку из ввода оболочки и использует ее для присвоения значений указанным переменным
  • return заставляет функцию оболочки выйти с указанным значением
  • shift перемещает позиционные параметры налево
  • test вычисляет условное выражение
  • times выводит имя пользователя и системное время, использованное оболочкой и ее потомками
  • trap указывает команды, которые должны выполняться при получении оболочкой сигнала
  • unset вызывает уничтожение переменных оболочки
  • wait ждет выхода из дочернего процесса и сообщает выходное состояние.

Зарезервированные переменные

  • $DIRSTACK - содержимое вершины стека каталогов
  • $EDITOR - текстовый редактор по умолчанию
  • $EUID - Эффективный UID. Если вы использовали программу su для выполнения команд от другого пользователя, то эта переменная содержит UID этого пользователя, в то время как...
  • $UID - ...содержит реальный идентификатор, который устанавливается только при логине
  • $FUNCNAME - имя текущей функции в скрипте
  • $GROUPS - массив групп к которым принадлежит текущий пользователь
  • $HOME - домашний каталог пользователя
  • $HOSTNAME - ваш hostname
  • $HOSTTYPE - архитектура машины
  • $LC_CTYPE - внутренняя переменная, котороя определяет кодировку символов
  • $OLDPWD - прежний рабочий каталог
  • $OSTYPE - тип ОС
  • $PATH - путь поиска программ
  • $PPID - идентификатор родительского процесса
  • $SECONDS - время работы скрипта(в сек.)
  • $# - общее количество параметров переданных скрипту
  • $* - все аргументы переданыне скрипту(выводятся в строку)
  • $@ - тоже самое, что и предыдущий, но параметры выводятся в столбик
  • $! - PID последнего запущенного в фоне процесса
  • $$ - PID самого скрипта

Команды возвращающие код возврата

  • test - используется для логического сравнения. после выражения, неоьбходима закрывающая скобка "]"
  • [ - синоним команды test
  • [[ - расширенная версия "[" (начиная с версии 2.02)(как в примере), внутри которой могут быть использованы || (или), & (и). Должна иметь закрывающую скобку "]]"
  • (( )) - математическое сравнение.

Логические операции

  • -z # строка пуста
  • -n # строка не пуста
  • =, (==) # строки равны
  • != # строки неравны
  • -eq # равно
  • -ne # неравно
  • -lt,(<) # меньше
  • -le,(<=) # меньше или равно
  • -gt,(>) #больше
  • -ge,(>=) #больше или равно
  • ! #отрицание логического выражения
  • -a,(&&) #логическое «И»
  • -o,(||) # логическое «ИЛИ»

Математические операции

  • + — сложение
  • — вычитание
  • * — умножение
  • / — деление
  • ** — возведение в степень
  • % — модуль(деление по модулю), остаток от деления

Условные операторы

  • if выражение или команда возвращающая код возврата
  • then ...
  • else ...
  • fi
  • if выражение или команда возвращающая код возврата
  • then команды
  • elif выражение или команда возвращающая код возврата
  • then команды
  • fi
  • case $переменная in
  • <n>)команды
  • ;;
  • *)команды # выполняются если не было найдено подходящего варианта
  • ;;

Циклы

  • for переменная in список_значений do команды done
  • while выражение или команда возвращающая код возврата do команды done
  • until выражение или команда возвращающая код возврата do команды done 

Комментариев нет: