Как получить формат подсказки строка в csh / tcsh

Awk работает по модели "шаблон {действие}", поэтому вы можете объединить эти два процесса в один и правильный:

 df -m | awk 'NR==2 {print $4}'

Это, однако, является хрупким, поскольку вторая запись может измениться (в моих системах корневая запись - это третья строка), поэтому вы можете сопоставить последнее поле записи для корневой файловой системы, например:

df -m | awk '$NF == "/" {print $4}'

, что гарантирует совпадение вашего шаблона везде df печатает / .

0
25.03.2019, 09:55
2 ответа

Поскольку вы используете компьютер компании, в которой работаете, обратитесь за помощью в ИТ-отдел. Возможно, изменение подсказки противоречит политике компании. Если нет, возможно, они могут создать для вас пользовательскую подсказку или обновить свою корпоративную подсказку -. В противном случае они, скорее всего, смогут помочь вам в создании собственных пользовательских подсказок.

Как упоминалось в комментариях, «подсказки хранятся в переменных $PS1, $PS2, И $PS3», хотя это может зависеть от разновидности вашей операционной системы, о которой вы забыли упомянуть.

-1
28.01.2020, 03:53

Переменная подсказки (t )csh — $prompt[1], поэтому прямой ответ на ваш вопрос —:

printf '%s\n' "$prompt"

В tcsh(, но не в оригинальном csh), вы можете использовать побег %tдля времени в формате 12 часов утра/вечера:

% set prompt = "%t - $prompt"
1:53pm - % _

или %Pдля 24-часового формата с секундами:

% set prompt = "$prompt (%P) "
%  (13:55:31) _

Вы можете увидеть полный список escape-последовательностей на tcsh (1)справочной странице.

[1] tcshтакже имеет $prompt2для циклов foreach/ whileи продолжения строки \и $prompt3для функции исправления орфографии.

1
28.01.2020, 03:53

Теги

Похожие вопросы