Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > Помогите пожалуйста написать командный файл.


Автор: SamArtemy 7.3.2013, 15:58
Реализовать командный файл, который выводит: дату в формате день –
месяц – год – время, информацию о системе в формате: имя компьютера :
версия ОС : IP адрес : имя текущего пользователя : текущий каталог, Выводит
настройки домашнего каталога текущего пользователя и основные
переменные окружения.
Далее в цикле выводит список активных
пользователей – запрашивает имя пользователя и выводит информацию об
активности введенного пользователя.


Буду очень благодарен за помощь.

Автор: rsm 8.3.2013, 10:26
Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
дату в формате день – месяц – год – время

date +'%d - %m - %Y - %T'

Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
имя компьютера

hostname

Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
версия ОС

Этого может не быть вовсе, зависит от дистрибутива.

Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
IP адрес

Какой именно IP-адрес? Их может быть несколько, причём на разных интерфейсах.

Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
имя текущего пользователя

whoami или echo $USER

Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
текущий каталог

pwd или echo $PWD

Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
Выводит настройки домашнего каталога текущего пользователя

Что подразумевается под "настройками"?

Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
основные переменные окружения

printenv

Цитата(SamArtemy @  7.3.2013,  17:58 Найти цитируемый пост)
Далее в цикле выводит список активных пользователей – запрашивает имя пользователя и выводит информацию об активности введенного пользователя

Таки запрашивает в цикле или выводит в цикле? Если запрашивает в цикле тогда можно так:

while read user; do who | grep "^$user"; done

Если выводит в цикле по текущему пользователю, тогда так (с обновлением информации каждые 5 секунд):

watch -n 5 'who | grep "^$USER"'

И вообще тему по-идее нужно было создавать http://forum.vingrad.ru/forum/Vingrad-help-center.html, т.к. судя по всему разбираться и писать скрипт самостоятельно никакого желания нет.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)