Говорите на BASH: различия между версиями
м →Золотое правило: оформление |
Нет описания правки |
||
Строка 96: | Строка 96: | ||
|type="{}"} |
|type="{}"} |
||
{ mount | grep /media _25} |
{ mount | grep /media _25} |
||
{Напишите команду, выводящую список всех отмонтированных устройств в файл mounted.list |
|||
|type="{}"} |
|||
{ mount > mounted.list _30} |
|||
</quiz> |
</quiz> |
||
Версия от 16:38, 1 марта 2010
Цель данного курса - быстро и безболезненно научиться основам использования семейства командных оболочен *SH, созданных в рамках проекта GNU. Метод - сравнительный Рекомендуется при освоении курса запускать команды в терминале вашего компьютера (Не запускайте их с правами суперпользователя).
Предисловие
В общем виде команда состоит из имени программы, параметров и аргументов.
rm | -ri | "/home/user/anime" | ||||
имя программы для удаления |
параметры | аргумент | ||||
Назначение:Удалить каталог, требуя подтверждение перед удалением каждого файла |
Перенаправления
Пренаправление потоков - мощный инструмент, который позволяет организовывать взаимодействие разных программ. Это - важнейший элемент философии UNIX. Приведённый ниже пример сотоит из двух частей - командо до перенаправления (">>") и после. Попробуйте выполнить команду cat /dev/urandom саму по себе и вы увидите как по экрану "поползут крякозаблики" (нажмите Ctrl+C для остановки). Командой ">>" эти "крякозяблики" отправятся на вход звуковой карты. ( Услышите ли Вы звук зависит от конфигурации системы.)
cat | /dev/urandom | ">>" | /dev/dsp | |||
вывести содержимое файла в стандартный вывод |
генератор псевдослучайных символов |
перенаправить вывод в файл |
файл звуковой карты | |||
Назначение:Быстро проверить работоспособность звуковой карты |
Здесь используется "конвейер" - символ ("|"). Он перенаправляет стандартный вывод одной программы на стандартный ввод другой программы.
man | useradd | "конвейер" | grep | -i | -- | -e |
вызвать справку | для программы useradd | перенаправить вывод на ввод фильтра |
фильтр | не учитывать регистр |
конец списка опций |
что ищем |
Назначение:Быстро проверить назначение опции |
for | FILE | "in " | *.md5 | do | md5sum | -c | $FILE; | done |
Управляющий элемент |
Помещаем имя в переменную |
Управляющий элемент |
маска файла |
Управляющий элемент |
программа для работы с md5-хешами |
опция проверки |
подставляем имя файла |
Управляющий элемент |
Назначение:Проверить md5-хеши всех пакетов в каталоге (для который есть файл с хешем) |
Золотое правило
Существует не менее двух способов сделать что-то. Следующие команды выполняют одну и ту же операцию распаковывают все targz- архивы(тарболлы) в текущем каталоге.
В терминологии командных оболочек UNIX, командами одинаково называются и встроенные команды, и сторонние программы. Это объясняется тем, что в UNIX- подобных ОС программы вызываются по имени. Хотя подобное смешение может вызвать поначалу некоторую путаницу, на самом деле представляет собой большое удобство.
Фильтр
Одна из полезнейших программ. Вместе с механизмом перенаправления позволяет очень легко осуществлять нетривиальную обработку информации. Сравните два примера.
grep, как мы уже знаем, - это фильтр. Опция -v инвертирует условие поиска (шаблон), "OK" - наш шаблон. Что выведет на экран вторая команда?
Задания для отработки материала
Примечания
- ↑ Под управлением UNIX-подобных ОС