Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Открытые системы / Практические задания для семинара по программированию на shell

.doc
Скачиваний:
34
Добавлен:
10.05.2014
Размер:
28.16 Кб
Скачать

Практические задания для семинара по программированию на shell

1. Определите одной командой: имя хоста; тип ОС; дату сборки системы.

  1. Определите имена пользователей, которые работают в системе в данный момент.

  2. Определите системное имя вашего терминала

  3. Добавьте в приглашение командной строки: текущую дату; имя системы; путь к текущему каталогу имя пользователя.

  4. Определите список идентификаторов процессов, запущенных с вашего терминала.

  5. Определите число процессов с положительными и отрицательными значениями эффективного приоритета, исполняющихся в данный момент в системе.

  6. Получите список всех процессов, которые в данный момент находятся в состоянии WAIT

  7. Получите список всех процессов, которые в данный момент находятся в состоянии RUN

  8. Определите список всех процессов, которые использовали на момент запуска скрипта более 5 минут времени ЦП.

  9. Определите список всех процессов, которые использовали на момент запуска скрипта менее 5 минут времени ЦП.

  10. Получите список всех обычных файлов текущего каталога, владельцем которых является пользователь web, дата создания позже позавчерашнего числа и они являются исполняемыми для группы web.

  11. Получите список всех файлов с расширением txt, расположенных в подкаталогах текущего каталога с глубиной вложения 2.

  12. Напишите скрипт, который при останове системы должен проверить наличие, а при необходимости завершить процесс с именем ECHO. Где этот скрипт должен быть расположен.

  13. Напишите скрипт, который при старте системы должен проверить наличие, а при необходимости запустить процесс с именем ECHO. Где этот скрипт должен быть расположен.

  14. Подсчитайте число строк, содержащих слово mail во всех файлах всех подкаталогах текущего каталога.

  15. Найдите самый «свежий» файл текущего каталога.

  16. Найдите самый «старый» файл текущего каталога.

  17. Напишите скрипт killall который завершит все процессы, запущенные пользователем gandy.

  18. Переименуйте все файлы текущего каталога с именами date-<Bчep.дaтa>.txt в date-<cer.дara>.txt. Формат даты YYYYMMDD.

  19. Определите имя процесса, который использовал больше всех других процессов время ЦП за последнюю минуту.

  20. Определите тип терминала и имя командного процессора пользователя torn.

  21. Определите тип вашего терминала.

  22. Перенаправьте поток ошибок команды в стандартный поток вывода, а стандартный поток вывода на устройство /dev/null

  23. Напишите конвеер, который способен подсчитать и число строк в отчете команды Is -al и число слов в этом же отчете.

  24. Распечатайте первые п строк всех файлов текущего каталога с расширением root.

  25. Распечатайте последние п строк всех файлов текущего каталога с расширением root.

  26. Определите дату последнего изменения файла.

  27. Определите дату последнего обращения к файлу.

  1. Подсчитайте число локальных переменных окружения.

  2. Подсчитайте число глобальных переменных окружения.

  3. Получите самое длинное значение из всех значений переменных окружения.

  4. Получите самое короткое значение из всех значений переменных окружения.

  5. Получите самую длинную командную строку для процессов, исполняемых в данный момент в системе.

  6. Получите самую короткую командную строку для процессов, исполняемых в данный момент в системе.