Говорите на BASH: различия между версиями
Нет описания правки |
|||
Строка 67: | Строка 67: | ||
{| class="tiles" style="text-align:center" |
{| class="tiles" style="text-align:center" |
||
|colspan="9"|<center><big> find . -maxdepth 1 -type f | xargs tar -xzf '{}'</center></big> |
|colspan="9"|<center><big> find . -maxdepth 1 -type f | xargs tar -xzf '{}'</center></big> |
||
|} |
|||
{| class="tiles" style="text-align:center" |
|||
|colspan="9"|<center><big> find . -maxdepth 1 -type f -name '*.tar.gz' -exec tar -xzf '{}' \;</center></big> |
|||
|} |
|} |
||
Версия от 14:25, 1 марта 2010
Цель данного курса - быстро и безболезненно научиться основам использования семейства командных оболочен *SH, созданных в рамках проекта GNU.
Метод - сравнительный[2]
Рекомендуется при освоении курса запускать команды в терминале вашего компьютера (Не запускайте их с правами суперпользователя).
Предисловие
В общем виде команда состоит из имени программы, параметров и аргументов.
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- архивы(тарболлы) в текущем каталоге.
Фильтр
Одна из полезнейших программ. Вместе с механизмом перенаправления позволяет очень легко осуществлять нетривиальную обработку информации. Сравните два примера.
grep, как мы уже знаем, - это фильтр. Опция -v инвертирует условие поиска (шаблон), "OK" - наш шаблон. Что выведет на экран вторая команда?
Задания для отработки материала
Этот раздел статьи ещё не написан. Согласно замыслу одного из участников Викиверситета, на этом месте должен располагаться специальный раздел.
Вы можете помочь проекту, написав этот раздел. |