Задание на лабораторную работу



Создать скрипт, осуществляющий вывод меню, состоящего из следующих пунктов : l текущий пользователь,

l объем используемой памяти,

l объем дискового пространства,

l запущенные процессы,

l процессы, запущенные текущим пользователем,

l системная дата и время,

l время запуска системы

l выход, -

и вывод соответствующей информации в зависимости от выбранного пункта меню. Процесс повторять до тех пор, пока не будет выбран пункт меню «выход»

Порядок выполнения работы

В ходе выполнения работы обратите внимание на следующие пункты:

1) Для названий пунктов меню лучше использовать латинский алфавит. В названиях обязательно обращать внимание на специальные символы и соответствующие правила их использования в строках;

2) необходимо обращать внимание на регистр вводимых символов (в командах и их опциях, в специальных словах языка shell), на знаки пробела. Например,в операторе [ ]:

[ ̺ expression ̺ ]
3) Для работы с меню удобно использовать операторы select, case, if (описание

этих операторов приведены в документе с лекциями)
В ходе выполнения работы могут понадобиться следующие команды:

Имя текущего пользователя (whoami)

Cинтаксис команды

whoami

Выводит действительный идентификатор пользователя

Системная дата и время (date)

Cинтаксис команды

date [ПАРАМЕТР]... [+ФОРМАТ]
date [-u|--utc|--universal] [ММДДччмм[[ВВ]ГГ][.сс]]

Показывает текущее время в заданном ФОРМАТЕ, или устанавливает системную дату и время.

-d, --date=СТРОКА показывает время, описанное СТРОКОЙ - не 'текущее' время

-f,--file=ФАЙЛ_ДАТ как и --date, только для каждой строки в ФАЙЛЕ_ДАТ

-I, --iso-8601[=TIMESPEC] вывод в формате строки даты/времени ISO-8601.

TIMESPEC=`date' (или пропущено) - показывает только дату; `hours', `minutes', или `seconds' - дату и время с заданной точностью.

показывает время последнего изменения ФАЙЛА вывод строки даты в формате RFC-822 устанавливает время, заданное СТРОКОЙ

-r, --reference=ФАЙЛ
-R, --rfc-822
-s, --set=СТРОКА
-u, --utc, --universalвыдает или устанавливает время по Гринвичу

Параметр ФОРМАТ управляет исходящей информацией. Параметр работает только с временем по Гринвичу. Существуют такие интерпретируемые значения:

%% символ процента %
%a сокращенное название дня недели в локали (Вск..Суб)
%Aполное название дня недели в локали, с непостоянной длиной названия

(Воскресенье..Суббота)
%b сокращенное название месяца в локали (Янв..Дек)
%B полное название месяца в локали, с непостоянной длиной названия (Январь..Декабрь) %c дата и время в локали (Суб Ноя 04 12:02:33 EST 1989)
%d день месяца (01..31)
%D дата (мм/дд/гг)
%e день месяца, без нулей слева ( 1..31)
%h аналогично %b
%H час (00..23)
%I час (01..12)
%j день года (001..366)
%k час ( 0..23)
%l час ( 1..12)
%m месяц (01..12)
%M минуты (00..59)
%n новая строка
%p в зависимости от локали AM или PM (до полудня - после полудня)
%r время, в 12-часовом формате (чч:мм:сс [AP]M)
%s секунды с `00:00:00 1970-01-01 UTC' (расширение GNU)
%S секунды (00..60)
%t горизонтальная табуляция
%T время, в 24-часовом формате (чч:мм:сс)
%U номер недели в году с Воскресеньем, как первым днем недели (00..53)
%V номер недели в году с Понедельником, как первым днем недели (01..53)
%w номер дня в неделе (0..6); 0 принимается за Воскресенье
%W номер недели в году с Понедельником, как первым днем недели (00..53)

%x представление даты в локали (мм/дд/гг)
%X представление времени в локали (%Ч:%М:%С)
%y последние два разряда года (00..99)
%Y год (1970...)
%z формат временной зоны RFC-822 (-0500) (нестандартное расширение)
%Z временная зона (например, EDT), или ничего, если зона не определена
По умолчанию, date заполняет пустые цифровые поля нулями. В GNU date распознает

следующие модификаторы между `%' и цифровой командой:
`-' (дефис) не заполнять поле `_' (подчеркивание) заполнить поле пробелами

Время работы системы (uptime) Cинтаксис команды
uptime
uptime [-V]

uptime - показывает время работы системы с последнего запуска.

Отчёт об использовании дискового пространства (df)

Cинтаксис команды

df [опции] [файл...]

Опции: [-ahHiklmPv] [-t тип-файловой-системы] [-x тип-файловой- системы] [--block-size=размер] [--print-type] [--no-sync] [--sync] [--help] [--version] [--]

Поиск образца в файле (grep)

Cинтаксис команды

grep pattern [file...]

Поиск участков текста в файле(ах), соответствующих шаблону pattern, где pattern может быть как обычной строкой, так и регулярным выражением.
Если файл(ы) для поиска не задан, то команда grep работает как фильтр для устройства stdout, например в pipes:

bash$ ps ax | grep clock

765 tty1 S 0:00 xclock

901 pts/1 S 0:00 grep clock

 

 


Дата добавления: 2018-06-01; просмотров: 537; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!