Как отобразить время в терминале вместо имени пользователя@имя хоста?

Как отобразить время в терминале вместо имени пользователя@имя хоста?

В терминале Ubuntu вы увидите:

someone@workstation:

как префикс каждой строки. Возможно ли, чтобы время отображалось в каждой строке?

[current time]someone@workstation: 

Время будет меняться до тех пор, пока я не нажму «Enter», чтобы информацию о времени можно было сохранить для справки.

решение1

В терминале Ubuntu вы видите [это] как префикс каждой строки.

Это не терминал делает это. Этооболочка. Отображается то, чтоприглашение оболочки. А в некоторых оболочках есть всякие странные вещи, которые можно делать в подсказках.

Например, в Z Shell добиться желаемого просто:

TRAPALRM() { zle сброс-приглашение ; }
PS1='[%*] %n@%m:'
ТМВЫХОД=1

Однако я подозреваю, что в долгосрочной перспективе для вас гораздо полезнее будут возможности оболочки Z по сохранению временных меток в истории команд и отображению истории команд с временными метками:

setopt расширенная_история
история -i
Или механизм оболочки Bourne Again:
HISTTIMEFORMAT='%F %T'

дальнейшее чтение

решение2

Да. Запустите это -

PS1='\t:\u@\h:\w$ '

Теперь терминал будет выглядеть так

21:06:09:user@host:/etc$

Это превратит приглашение в то, что вам нужно.
Если вы хотите, чтобы это было постоянно, поместите эту строку в~/.bashrc

Связанный контент