사용자 이름@호스트 이름 대신 터미널에 시간을 표시하는 방법은 무엇입니까?

사용자 이름@호스트 이름 대신 터미널에 시간을 표시하는 방법은 무엇입니까?

우분투 터미널에는 다음이 표시됩니다.

someone@workstation:

각 줄의 접두어로. 각 줄에 시간을 표시할 수 있나요?

[current time]someone@workstation: 

시간 정보를 참조용으로 보관할 수 있도록 "enter"를 입력할 때까지 시간이 계속 변경됩니다.

답변1

우분투 터미널에서는 [this]가 각 줄의 접두사로 표시됩니다.

그런 일을 하는 것은 터미널이 아닙니다. 그것은껍데기. 표시되는 것은쉘 프롬프트. 그리고 일부 쉘에는 프롬프트에서 수행할 수 있는 온갖 이상한 작업이 있습니다.

예를 들어 Z Shell에서는 원하는 것을 달성하는 것이 간단합니다.

TRAPALRM() { zle 재설정 프롬프트 ; }
PS1='[%*] %n@%m:'
TMOUT=1

그러나 장기적으로 볼 때 훨씬 더 유용한 것은 명령 기록에 타임스탬프를 저장하고 타임스탬프와 함께 명령 기록을 표시하는 Z Shell의 옵션이라고 생각됩니다.

setopt 확장_역사
역사 -i
또는 Bourne Again 쉘의 메커니즘:
HISTTIMEFORMAT='%F %T'

추가 읽기

답변2

예. 이것을 실행하십시오 -

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

터미널은 이제 다음과 같습니다

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

그러면 프롬프트가 원하는 대로 바뀔 것입니다.
영구적으로 원한다면 해당 줄을~/.bashrc

관련 정보