답변:
이 줄을 ~/.bashrc파일에 추가 하십시오.
export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\ "
따라서 출력은 다음과 같습니다.
[07:00:31] user@name:~$
date명령, 당신은 대체 할 수 +%H:%M:%S와 함께 +%T.
내 솔루션은 http://bashrcgenerator.com/ 을 사용 하여 .bashrc에 넣을 PS1 라인을 생성하는 것입니다.
export PS1="\t [\u@\h \W]\\$ \[$(tput sgr0)\]"
어떤 모습 일지
13:05:54 [chad@work-laptop:~/Downloads]$ ls -al
PROMPT_COMMAND를 사용하면 기록이 엉망이됩니다. 히스토리를 순환하는 동안 더 긴 행이 나타나면 앞쪽에 추가 된 시간 소인과 같은 수의 문자로 프롬프트의 끝을 잘라냅니다. 예 :
13:14:38 [chad@work-laptop:~/Doexport PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\\] "
이 줄은 입력하는 것처럼 입력하지 않는 것처럼 올바른 위치에 문자를 표시하지 않기 때문에 편집 할 수 없습니다.
PROMPT_COMMAND로 수행 할 수 있다고 생각합니다. 아마도 [$ (tput sgr0)] 부분을 사용하여 PS1이 작동합니다.
대신 프롬프트 자체에 날짜를 추가, 당신은 날짜를 추가 할 수 있습니다 직전에 상기 다음 줄을 배치하여 프롬프트 위에 당신의 .bashrc. 작동하려면 설치해야합니다 cowsay. 간단한 프롬프트 를 유지하면서 날짜를 표시하는 재미있는 방법입니다 .
cowsay "Welcome $USER! It's now $(date '+%A %B %d %Y %r')"
현재 형식으로 현재 환경에서 $USER및 date변수를 읽을 때 수정하지 않고도 모든 사람의 시스템에서 작동 합니다.

평판 점수가 충분하지 않으므로 답변에 의견을 추가하여 개선 할 수 있습니다. 정보를 추가 할 수있는 유일한 방법은 두 번째 답변을 만드는 것 같습니다. 그래서 나는 대답으로 말한 것을 반복하고 그 위에 쌓을 것입니다.
날짜 소인을 수정하려는 사용자의 .bashrc 파일을 편집하십시오.
"user @ host : ~ $"가 표시되면 현재 사용자의 홈 디렉토리에있는 것입니다. .bashrc 파일은 접두사 "."가 붙어 있기 때문에 숨겨진 파일입니다. 목록에서 보려면 긴 목록을 사용해야합니다.
"ls -a"를 사용하면 ".bashrc"파일이 표시됩니다.
텍스트 편집기로 파일을 편집하십시오. 예를 들어 "nano .bashrc", "vim .bashrc", "vi .bashrc", "pico .bashrc"또는 사용하려는 편집기가 있습니다.
이것을 스크립팅하고 많은 사용자를 위해 많은 쉘에 추가 할 계획이라면, ">>"연산자와 함께 "echo"명령을 사용하는 것이 좋습니다. 예를 들어
echo "export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\\"" >> .bashrc
이 방법을 사용하는 경우 수정하려는 사용자의 현재 작업 디렉토리에 있는지 확인하십시오. 이를 확인하기 위해 "pwd"또는 print working directory 명령을 사용할 수 있습니다.
"]"끝 괄호와 사용자 이름 사이의 추가 공간이 마음에 들지 않으면이 약간 수정 된 정규식을 사용하십시오.
export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\\"
파일을 직접 편집하는 경우 사용하십시오.
@ devav2의 답변에 추가하기 만하면됩니다.
초보자를위한 읽기 쉬운 에코 명령은 다음과 같습니다.
export PROMPT_COMMAND='echo -n "$(date +%H:%M:%S) "'
대신에
export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\ "
echo 명령은 내보내기 시점에 평가되지 않으므로 큰 따옴표 대신 작은 따옴표를 사용하는 것이 좋습니다. 작은 따옴표를 사용하여 전체 명령을 인용하면 큰 따옴표를 사용하여 반향을 에코 명령에 인용하여 , [및$
올바른 진행 방법 $HOME/.bashrc은 코드 를 찾아서 PS1주석을 달고 개인 코드를 추가하는 것입니다. 이것은 내 블록입니다.
PS1_DATE="\D{%Y-%m-%d %H:%M:%S}"
if [ "$color_prompt" = yes ]; then
PS1="[$PS1_DATE \[\e]0; \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[\033[00m\]\[\033[01;34m\]\w \[\033[00m\]\$] "
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='[$PS1_DATE ${debian_chroot:+($debian_chroot)}\w \$] '
#PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
산출:
[2019-06-18 15:54:29 ~/Desktop $] echo "It's late!"
명령 프롬프트에 타임 스탬프를 표시하는 가장 쉬운 구문은 다음과 같습니다.
PS1='\D{%F} \t $...'
어디
\D{format}형식이 지정된 날짜 ( man bash, PROMPTING 섹션 참조)
%F완전한 날짜; % Y- % m- % d와 동일 ( man date, FORMAT 섹션 참조)
\t24 시간 HH : MM : SS 형식의 현재 시간입니다 ( man bash, PROMPTING 섹션 참조).
nano ~/.bashrc
위에 표시된대로 PS1 변수를 변경하십시오.
source ~/.bashrc
내 시간은 cowsay위 의 답변 과 비슷합니다 . 입력 now해야 ~/.bashrc하지만을 입력하여 터미널에서 호출 할 수도 있습니다 now.
스크린 샷은 다음과 같습니다.
bash 코드는 다음과 같은 자세한 답변에 게시되어 있습니다.
export PROMPT_COMMAND="echo -n \[\$(date +%F-%T)\]\ "
export HISTTIMEFORMAT="%F-%T "
적어도 나에게는 편리해 보인다.