- Напишите на bash часы, обновляющиеся каждую секунду. В случае, если скрипт запущен с ключем -d (или --date), то должна также выдаваться текущая дата.
- Напишите скрипт, рисующий шахматную доску в консоли.
- Напишите скрипт, который рекурсивно обходит каталог (переданный в качестве параметра) и выводит имена всех файлов, хозяином которых является текущий пользователь, и возраст которых больше N (второй параметр) дней. Если параметры не переданы, должна быть выдана ошибка.
- Определить какие компьютеры в локальной сети включены. Локальных сетей может быть несколько – нужно проверить все.
- Есть файл цитат вида (в первой строке – автор, во второй – количество цитат):
В.И. Ленин
4
* 0
Учиться, учиться и еще раз учиться
* 1
Ученье свет, а неученье - тьма!
* 2
Наше дело правое!
Враг будет разбит - победа будет за нами!
(И.В. Сталин)
* 3
Товарищи, большевики!
Революция победила!
Требуется написать скрипт, выбирающий из подобного файла случайную цитату и выводящий ее на экран.
- Напишите «умную» утилиту удаления файла.
В случае запуска без ключей она должна выдавать запрос на удаление каждого файла, имя которого подходит под маску, переданную в качестве параметра.
В случае запуска с ключом –v все запросы должны отсутствовать.
В случае запуска с ключом -? или –help должна выдаваться информация об использовании.
- Напишите bash скрипт рисующий в консоли заставку, максимально похожую на заставку из фильма «Матрица». (см. картинку в конце файла).
- Создайте в bash массив и заполните его числами Фибоначчи от 0-го до N-го. Число N передается в качестве параметра. Если параметр не указан, то должна быть выдана ошибка.
- Напишите на bash рекурсивную функцию для вычисления N-го числа Фибоначчи. Число N передается в качестве параметра. Если параметр не указан, то должна быть выдана ошибка.
- Написать bash скрипт, определяющий является ли строка, переданная в качестве параметра, палиндромом (читается одинаково в обе стороны)
- В файле, переданном в качестве параметра, содержится электронная переписка. Требуется выдать электронные адреса из этой переписки в порядке убывания частоты появления в файле.
- Написать скрипт, который принимает в качестве параметров день, месяц и год и должен выдать на экран какой это день недели. Решать задачу можно только через обработку результатов команды сal.
- Напишите аналог утилиты du.
- Определить файлы в текущем каталоге, которые являются символическими ссылками.
- Закодируйте файл, заменив в нем каждый символ на следующий по ASCII таблице.
- Скачайте произвольную RSS-ленту (в виде XML-файла) и выведите названия присутствующих в ней разделов (item).
- Скачайте произвольный html документ. Выведите содержимое тега <body>, очищенное от всех тегов.
- Проверьте, что для всех файлов с расширением .c в текущем каталоге в этом же каталоге есть все подключаемые ими файлы .h
- Посчитайте синус числа, переданного в качестве параметра. Это задание необходимо решать через сумму ряда!
- Создайте утилиту для группового переименования
rename_group --prefix aa --suffix bb --number 10 *.a*
Такая команда должна переименовать все файлы, подходящие под маску, в следующий вид: aaNbb.xxx, где N – номер найденного файла + 10, а xxx – изначальное раширение (оно не меняется).
