Практика бд. Операционные. Министерство образования и науки российской федерации университет итмо д. А. Зубок, А. В. Маятин
Скачать 324.61 Kb.
|
0 = stdin1 = stdout 2 = stderrкоманда > файл – перенаправление стандартного вывода в файл, содержимое существующего файла удаляется. команда >> файл – перенаправление стандартного вывода в файл, поток дописывается в конец файла. команда1 | команда2 – перенаправление стандартного вывода первой команды на стандартный ввод второй команды = образование конвейера команд. команда1 $(команда2) – передача вывода команды 2 в качестве параметров при запуске команды 1. Внутри скрипта конструкция $(команда2) может использоваться, например, для передачи результатов работы команды 2 в параметры цикла for … in. Работа со строками (внутренние команды bash)${#string} – выводит длину строки (string – имя переменной); ${string:position:length} – извлекает $length символов из $string, начиная с позиции $position. Частный случай: ${string:position} извлекает подстроку из $string, начиная с позиции $position.${string#substring} – удаляет самую короткую из найденных подстрок $substring в строке $string. Поиск ведется с начала строки. $substring – регулярное выражение (см. ниже). ${string##substring} – удаляет самую длинную из найденных подстрок $substring в строке $string. Поиск ведется с начала строки. $substring – регулярное выражение. ${string/substring/replacement} – замещает первое вхождение $substring строкой $replacement. $substring – регулярное выражение. ${string//substring/replacement} – замещает все вхождения $substring строкой $replacement. $substring – регулярное выражение. Работа со строками (внешние команды)Длякаждойкомандыдоступноуправлениеспомощьюпередаваемыхкоманде параметров. Рекомендуем ознакомиться с документацией по этимкомандамспомощьюкомандыman. sort – сортирует поток текста в порядке убывания или возрастания, в зависимости от заданных опций. uniq – удаляет повторяющиеся строки из отсортированного файла. cut – извлекает отдельные поля из текстовых файлов (поле – последовательность символов в строке до разделителя). head – выводит начальные строки из файла на stdout. tail – выводит последние строки из файла на stdout. wc – подсчитывает количество слов/строк/символов в файле или в потоке tr – заменяет одни символы на другие. Полнофункциональныемногоцелевыеутилиты: grep – многоцелевая поисковая утилита, использующая регулярные выражения. grep pattern [file...] – утилита поиска участков текста в файле(ах), соответствующих шаблону pattern, где pattern может быть как обычной строкой, так и регулярным выражением. Sed – неинтерактивный "потоковый редактор". Принимает текст либо с устройства stdin, либо из текстового файла, выполняет некоторые операции над строками и затем выводит результат на устройство stdout или в файл. Sed определяет, по заданному адресному пространству, над какими строками следует выполнить операции. Адресное пространство строк задается либо их порядковыми номерами, либо шаблоном. Например, команда 3d заставит sed удалить третью строку, а команда /windows/d означает, что все строки, содержащие "windows", должны быть удалены. Наиболее часто используются команды p – печать (на stdout), d – удаление и s – замена. awk – утилита контекстного поиска и преобразования текста, инструмент для извлечения и/или обработки полей (колонок) в структурированных текстовых файлах. Awk разбивает каждую строку на отдельные поля. По умолчанию поля – это последовательности символов, отделенные друг от друга пробелами, однако имеется возможность назначения других символов в качестве разделителя полей. Awk анализирует и обрабатывает каждое поле в отдельности. Регулярные выражения – это набор символов и/или метасимволов, которые наделены особыми свойствами. Их основное назначение – поиск текста по шаблону и работа со строками. При построении регулярных выражений используются нижеследующие конструкции (в порядке убывания приоритета), некоторые из которых могут быть использованы только в расширенных версиях соответствующих команд (например, при запуске grep с ключом -E). с Любой неспециальный символ с соответствует самому себе \с Указание убрать любое специальное значение символа с (экранирование) ^ Начало строки $ Конец строки; выражение "^$" соответствует пустой строке. . Любой одиночный символ, за исключением символа перевода строки [...] Любой символ из ...; допустимы диапазоны типа а-z; возможно объединение диапазонов, например [a-z0-9] [^...] Любой символ не из ...; допустимы диапазоны \n Строка, соответствующая n-му выражению \(...\) r* Ноль или более вхождений символа r r+ Одно или более вхождений символа r r? Нуль или одно вхождение символа r \<...\> Границы слова \{ \} Число вхождений предыдущего выражения. Например, выражение "[0-9]\{5\}" соответствует подстроке из пяти десятичных цифр r1r2 За r1 следует r2 r1|r2 r1 или r2 Регулярное выражение r; может быть вложенным |