Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Изменение конфигурационных файлов командного интерпретатора  (Прочитано 1927 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Acruax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Мне необходимо изменить конфигурационные файлы командного интерпретатора так, чтобы PS1 была динамически изменяемой и наследуемой в дочерние shell. Формат PS1 должен выглядеть следующим образом: SSS >
SSS - это число с ведущими нулями, которое показывает количество пользователей интерактивно работающих в системе на данный момент.

Насколько я понимаю необходимо редактировать файл ~/.bashrc

Дайте какие-то направляющие, от чего оттолкнуться, а то это вообще первый опыт работы с bash, а лабу сдать необходимо.

Оффлайн corpix

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
    • Личный блог
Взгляните на это: http://maketecheasier.com/8-useful-and-interesting-bash-prompts/2009/09/04
Если я все правильно понял, должно помочь.

Можно сделать так:
PS1="\$(/usr/bin/who | wc -l) "
Как быть с нулями не знаю.
« Последнее редактирование: 27 Марта 2011, 13:41:50 от corpix »

Оффлайн Acruax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Re: Изменение конфигурационных файлов кома
« Ответ #2 : 27 Марта 2011, 15:17:57 »
$(/usr/bin/who | wc -l | printf %03d число)
Думаю это должно подойти, только вопрос как передать вывод wc -l на место числа в printf?

И еще такой вопрос, при запуске терминала нужно открыть лог файл и добавить в него дату и время, после чего все вводимые команды должны быть записаны в этот лог-файл. Как заставить конфигурационный файл выполнять это добавление каждой строки после ввода любой команды?
« Последнее редактирование: 27 Марта 2011, 15:24:46 от Acruax »

Оффлайн corpix

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
    • Личный блог
Думаю, что целесообразно здесь будет использовать xargs, не имел счастья с ним столкнуться, сам изучаю =)
$(/usr/bin/who |wc -l $1 | xargs -l printf %03d "${1}")
Насчёт лог файла не скажу, сам не знаю. Есть нечто похожее в .bash_history
Дату и время добавить в файл можно так:
date > file.log # Это перезапишет файл
date >> file.log # Это добавит запись в файл

 

Страница сгенерирована за 0.066 секунд. Запросов: 25.