Опубликовано Bash в Ср, 23/12/2009 — 20:46
- Перечень примеров
- 2-1. cleanup: Сценарий очистки лог-файлов в
/var/log - 2-2. cleanup: Расширенная версия предыдущего
сценария. - 3-1. Вложенные блоки и перенаправление
ввода-вывода - 3-2. Сохранение результата исполнения
вложенного блока в файл - 3-3. Запуск цикла в фоновом
режиме - 3-4. Резервное архивирование всех файлов,
которые были изменены в течение последних суток - 4-1. Присваивание значений переменным и
подстановка значений переменных - 4-2. Простое присваивание
- 4-3. Присваивание значений переменным
простое и замаскированное - 4-4. Целое число или
строка? - 4-5. Позиционные параметры
- 4-6. wh, whois
выяснение имени домена - 4-7. Использование команды shift
- 5-1. Вывод «причудливых»
переменных - 5-2. Экранированные символы
- 6-1. завершение / код завершения
- 6-2. Использование символа ! для логической инверсии кода возврата
- 7-1. Что есть «истина»?
- 7-2. Эквиваленты команды test — /usr/bin/test,
[ ], и /usr/bin/[ - 7-3. Арифметические выражения внутри
(( )) - 7-4. Проверка «битых»
ссылок - 7-5. Операции сравнения
- 7-6. Проверка — является ли строка
пустой - 7-7. zmost
- 8-1. Наибольший общий делитель
- 8-2. Арифметические операции
- 8-3. Построение сложных условий,
использующих && и || - 8-4. Различные представления числовых
констант - 9-1. $IFS и пробельные символы
- 9-2. Ограничения времени ожидания
ввода - 9-3. Еще один пример ограничения времени
ожидания ввода от пользователя - 9-4. Ограничение времени ожидания команды
read - 9-5. Я — root?
- 9-6. arglist: Вывод списка аргументов с помощью
переменных $* и $@ - 9-7. Противоречия в переменных
$* и $@ - 9-8. Содержимое $* и $@, когда
переменная $IFS — пуста - 9-9. Переменная
«подчеркивание» - 9-10. Вставка пустых строк между
параграфами в текстовом файле - 9-11. Преобразование графических файлов из
одного формата в другой, с изменением имени файла - 9-12. Альтернативный способ
извлечения подстрок - 9-13. Подстановка параметров и сообщения об
ошибках - 9-14. Подстановка параметров и
сообщение о «порядке
использования» - 9-15. Длина переменной
- 9-16. Поиск по шаблону в
подстановке параметров - 9-17. Изменение расширений в именах
файлов: - 9-18. Поиск по шаблону при анализе
произвольных строк - 9-19. Поиск префиксов и суффиксов с
заменой по шаблону - 9-20. Объявление переменных с помощью
инструкции declare - 9-21. Косвенные ссылки
- 9-22. Передача косвенных ссылок в
awk - 9-23. Генерация случайных чисел
- 9-24. Выбор случайной карты из
колоды - 9-25. Псевдослучайное число из
заданного диапазона - 9-26. Имитация бросания кубика с
помощью RANDOM - 9-27. Переустановка
RANDOM - 9-28. Получение псевдослучайных чисел с
помощью awk - 9-29. Работа с переменными в стиле языка
C - 10-1. Простой цикл for
- 10-2. Цикл for с двумя параметрами в каждом из
элементов списка - 10-3. Fileinfo: обработка списка файлов,
находящегося в переменной - 10-4. Обработка списка файлов в цикле
for - 10-5. Цикл for без списка аргументов
- 10-6. Создание списка аргументов в
цикле for с помощью операции
подстановки команд - 10-7. grep
для бинарных файлов - 10-8. Список всех пользователей
системы - 10-9. Проверка авторства всех
бинарных файлов в текущем каталоге - 10-10. Список символических ссылок в
каталоге - 10-11. Список символических ссылок в
каталоге, сохраняемый в файле - 10-12. C-подобный синтаксис оператора
цикла for - 10-13. Работа с командой efax в пакетном режиме
- 10-14. Простой цикл while
- 10-15. Другой пример цикла while
- 10-16. Цикл while с несколькими условиями
- 10-17. C-подобный синтаксис оформления
цикла while - 10-18. Цикл until
- 10-19. Вложенный цикл
- 10-20. Команды break и continue в цикле
- 10-21. Прерывание многоуровневых
циклов - 10-22. Передача управление в
начало внешнего цикла - 10-23. Живой пример использования
«continue N» - 10-24. Использование case
- 10-25. Создание меню с помощью
case - 10-26. Оператор case допускает использовать подстановку
команд вместо анализируемой переменной - 10-27. Простой пример сравнения
строк - 10-28. Проверка ввода
- 10-29. Создание меню с помощью
select - 10-30. Создание меню с помощью
select в функции - 11-1. printf в действии
- 11-2. Ввод значений переменных с помощью
read - 11-3. Пример использования команды
read без указания переменной
для ввода - 11-4. Ввод многострочного текста с помощью
read - 11-5. Обнаружение нажатия на
курсорные клавиши - 11-6. Чтение командой read из файла через перенаправление
- 11-7. Проблемы чтения данных из канала
(конвейера) - 11-8. Смена текущего каталога
- 11-9. Команда let, арифметические операции.
- 11-10. Демонстрация команды eval
- 11-11. Принудительное завершение
сеанса - 11-12. Шифрование по алгоритму
«rot13» - 11-13. Замена имени переменной на ее
значение, в исходном тексте программы на языке Perl, с помощью
eval - 11-14. Установка значений аргументов с
помощью команды set - 11-15. Изменение значений позиционных
параметров (аргументов) - 11-16. «Сброс» переменной
- 11-17. Передача переменных во
вложенный сценарий awk, с помощью
export - 11-18. Прием опций/аргументов, передаваемых
сценарию, с помощью getopts - 11-19. «Подключение» внешнего файла
- 11-20. Пример (бесполезный) сценария,
который подключает себя самого. - 11-21. Команда exec
- 11-22. Сценарий, который запускает себя
самого - 11-23. Ожидание завершения процесса перед
тем как продолжить работу - 11-24. Сценарий, завершающий себя
сам с помощью команды kill - 12-1. Создание оглавления диска для записи
CDR, с помощью команды
ls - 12-2. Здравствуй или Прощай
- 12-3. Badname, удаление файлов в текущем каталоге,
имена которых содержат недопустимые символы и пробелы. - 12-4. Удаление файла по его номеру
inode - 12-5. Использование команды xargs для мониторинга системного
журнала - 12-6. copydir, копирование файлов из текущего
каталога в другое место. - 12-7. Завершение работы процесса по
его имени - 12-8. Подсчет
частоты встречаемости слов using xargs - 12-9. Пример работы с expr
- 12-10. Команда date
- 12-11. Частота встречаемости отдельных
слов - 12-12. Какие из файлов являются
сценариями? - 12-13. Генератор 10-значных случайных
чисел - 12-14. Мониторинг системного журнала с
помощью tail - 12-15. Сценарий-эмулятор «grep»
- 12-16. Поиск слов в словаре
- 12-17. toupper: Преобразование символов в верхний
регистр. - 12-18. lowercase: Изменение имен всех файлов в
текущем каталоге в нижний регистр. - 12-19. du:
Преобразование текстового файла из формата DOS в формат
Unix. - 12-20. rot13: Сверхслабое шифрование по алгоритму
rot13. - 12-21. Более «сложный» шифр
- 12-22. Отформатированный список
файлов. - 12-23. Пример форматирования списка файлов в
каталоге - 12-24. nl:
Самонумерующийся сценарий. - 12-25. Пример перемещения дерева каталогов
с помощью cpio - 12-26. Распаковка архива rpm
- 12-27. Удаление комментариев из файла с
текстом программы на языке C - 12-28. Исследование
каталога /usr/X11R6/bin - 12-29. «Расширенная» команда strings
- 12-30. Пример сравнения двух файлов с
помощью cmp. - 12-31. Утилиты basename и dirname
- 12-32. Проверка целостности
файла - 12-33. Декодирование файлов
- 12-34. Сценарий, отправляющий себя
самого по электронной почте - 12-35. Ежемесячные выплаты по
займу - 12-36. Перевод чисел из одной системы
счисления в другую - 12-37. Пример взаимодействия
bc со «встроенным документом» - 12-38. Вычисление числа
«пи» - 12-39. Преобразование чисел из
десятичной в шестнадцатиричную систему счисления - 12-40. Разложение числа на простые
множители - 12-41. Расчет гипотенузы прямоугольного
треугольника - 12-42. Использование seq для генерации списка аргументов цикла
for - 12-43. Использование getopt для разбора аргументов командной
строки - 12-44. Захват нажатых клавиш
- 12-45. Надежное удаление файла
- 12-46. Генератор имен
файлов - 12-47. Преобразование метров в
мили - 12-48. Пример работы с m4
- 13-1. Установка нового пароля
- 13-2. Установка символа
«забоя» - 13-3. невидимый
пароль: Отключение эхо-вывода на терминал - 13-4. Перехват нажатия на клавиши с помощью stty.
- 13-5. Использование команды
pidof при остановке
процесса - 13-6. Проверка образа CD
- 13-7. Создание файловой системы в
обычном файле - 13-8. Добавление нового жесткого
диска - 13-9. Сценарий killall, из каталога /etc/rc.d/init.d
- 14-1. Глупая выходка
- 14-2. Запись результатов выполнения
цикла в переменную - 16-1. Перенаправление stdin с помощью exec
- 16-2. Перенаправление stdout с помощью exec
- 16-3. Одновременное перенаправление
устройств, stdin и stdout, с помощью команды exec - 16-4. Перенаправление в цикл while
- 16-5. Альтернативная форма
перенаправления в цикле while - 16-6. Перенаправление в цикл until
- 16-7. Перенаправление в цикл for
- 16-8. Перенаправление устройств
(stdin и stdout) в цикле for - 16-9. Перенаправление в конструкции
if/then - 16-10. Файл с именами «names.data», для примеров
выше - 16-11. Регистрация событий
- 17-1. dummyfile: Создание 2-х строчного
файла-заготовки - 17-2. broadcast: Передача сообщения всем,
работающим в системе, пользователям - 17-3. Вывод многострочных сообщений с
помощью cat - 17-4. Вывод многострочных сообщений с
подавлением символов табуляции - 17-5. Встроенные документы и подстановка
параметров - 17-6. Передача пары файлов во входящий
каталог на «Sunsite» - 17-7. Отключение подстановки
параметров - 17-8. Сценарий, который создает
другой сценарий - 17-9. Встроенные документы и функции
- 17-10. «Анонимный» Встроенный
Документ - 17-11. Блочный комментарий
- 17-12. Встроенная справка к
сценарию - 19-1. Область видимости
переменных - 19-2. Личные настройки
пользователей - 19-3. Запуск нескольких
процессов в подоболочках - 20-1. Запуск сценария в ограниченном
режиме - 22-1. Простые функции
- 22-2. Функция с аргументами
- 22-3. Передача косвенных ссылок в
функцию - 22-4. Изменение значения
переменной, переданной в функцию по ссылке. - 22-5. Еще один пример разыменования
параметров функции, передаваемых по ссылке. - 22-6. Наибольшее из двух чисел
- 22-7. Преобразование чисел в римскую форму
записи - 22-8. Проверка возможности возврата
функциями больших значений - 22-9. Сравнение двух больших целых
чисел - 22-10. Настоящее имя
пользователя - 22-11. Область видимости локальных
переменных - 22-12. Использование локальных переменных
при рекурсии - 22-13. Ханойские Башни
- 23-1. Псевдонимы в сценарии
- 23-2. unalias: Объявление и удаление
псевдонимов - 24-1. Проверка аргументов командной строки
с помощью «И-списка» - 24-2. Еще один пример проверки
аргументов с помощью «И-списков» - 24-3. Комбинирование «ИЛИ-списков» и «И-списков»
- 25-1. Простой массив
- 25-2. Форматирование стихотворения
- 25-3. Различные операции над
массивами - 25-4. Строковые операции и
массивы - 25-5. Загрузка исходного текста
сценария в массив - 25-6. Некоторые специфичные особенности
массивов - 25-7. Пустые массивы и пустые
элементы - 25-8. Инициализация
массивов - 25-9. Копирование и конкатенация
массивов - 25-10. Еще пример на конкатенацию
массивов - 25-11. Старая, добрая: «Пузырьковая»
сортировка - 25-12. Вложенные массивы и косвенные
ссылки - 25-13. Пример реализации алгоритма
Решето
Эратосфена - 25-14. Эмуляция структуры
«СТЕК» («первый вошел — последний
вышел») - 25-15. Исследование математических
последовательностей - 25-16. Эмуляция массива с двумя
измерениями - 27-1. Пример работы с псевдоустройством
/dev/tcp - 27-2. Поиск файла программы по
идентификатору процесса - 27-3. Проверка состояния
соединения - 28-1. Удаление cookie-файлов
- 28-2. Создание файла подкачки (swapfile), с
помощью /dev/zero - 28-3. Создание электронного
диска - 29-1. Сценарий, содержащий ошибку
- 29-2. Пропущено ключевое слово
- 29-3. test24
- 29-4. Проверка условия с помощью функции
«assert» - 29-5. Ловушка на выходе
- 29-6. Удаление временного файла при
нажатии на Control-C - 29-7. Трассировка переменной
- 31-1. Строки и числа нельзя сравнивать
напрямую - 31-2. Западня в подоболочке
- 31-3. Передача вывода от команды
echo команде read, по конвейеру - 33-1. сценарий-обертка
- 33-2. Более сложный пример сценария-обертки
- 33-3. Сценарий-обертка вокруг сценария
awk - 33-4. Сценарий на языке Perl, встроенный в
Bash-скрипт - 33-5. Комбинирование сценария Bash и
Perl в одном файле - 33-6. Сценарий (бесполезный), который
вызывает себя сам - 33-7. Сценарий (имеющий практическую
ценность), который вызывает себя сам - 33-8. Еще один сценарий, который вызывает
себя сам - 33-9. «Цветная» адресная книга
- 33-10. Вывод цветного текста
- 33-11. Необычный способ передачи
возвращаемого значения - 33-12. Необычный способ получения
нескольких возвращаемых значений - 33-13. Передача массива в функцию и
возврат массива из функции - 33-14. Игры с анаграммами
- 33-15. Сценарий с
графическим интерфейсом - 34-1. Расширение строк
- 34-2. Косвенные ссылки на переменные —
новый метод - 34-3. Простая база данных, с
применением косвенных ссылок - 34-4. Массивы и другие хитрости для раздачи
колоды карт в четыре руки - A-1. manview: Просмотр страниц руководств
man - A-2. mailformat: Форматирование электронных
писем - A-3. rn:
Очень простая утилита для переименования файлов - A-4. blank-rename: переименование файлов, чьи
имена содержат пробелы - A-5. encryptedpw: Передача файла на ftp-сервер, с
использованием пароля - A-6. copy-cd: Копирование компакт-дисков с
данными - A-7. Последовательности Коллаца
(Collatz) - A-8. days-between: Подсчет числа дней между двумя
датами - A-9. Создание «словаря»
- A-10. Расчет индекса
«созвучности» - A-11. «Игра
«Жизнь»» - A-12. Файл с первым поколением для игры
«Жизнь» - A-13. behead: Удаление заголовков из электронных
писем и новостей - A-14. ftpget: Скачивание файлов по ftp
- A-15. Указание на авторские
права - A-16. password: Генератор случайного 8-ми
символьного пароля - A-17. fifo: Создание резервных копий с помощью
именованных каналов - A-18. Генерация простых чисел, с
использованием оператора деления по модулю (остаток от
деления) - A-19. tree: Вывод дерева каталогов
- A-20. Функции для
работы со строками - A-21. Directory
information - A-22. Объектно ориентированная база
данных - A-23. Монтирование USB-устройств
флэш-памяти. - A-24. Резервное копирование файлов
журналов - A-25. Предотвращение
интерпретации строк символов - A-26. Принудительная
интерпретация строк - A-27. Повторение основ
- C-1. Подсчет количества
символов - I-1. Пример файла .bashrc
- J-1. VIEWDATA.BAT: пакетный файл
DOS - J-2. viewdata.sh: Результат
преобразования VIEWDATA.BAT в сценарий командной
оболочки
- Страница для печати
- 8618 просмотров