.bashrc에서 bash 프롬프트를 더 읽기 쉽게 만드는 방법 - 이는 날짜와 관련이 있지만 전체적으로도 마찬가지입니다.

.bashrc에서 bash 프롬프트를 더 읽기 쉽게 만드는 방법 - 이는 날짜와 관련이 있지만 전체적으로도 마찬가지입니다.

여기 내 .bashrc 또는 적어도 프롬프트가 포함된 부분이 있습니다.

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
    # We have color support; assume it's compliant with Ecma-48
    # (ISO/IEC-6429). (Lack of such support is extremely rare, and such
    # a case would tend to support setf rather than setaf.)
    color_prompt=yes
    else
    color_prompt=
    fi
fi

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\A\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\d:\A\$ '
fi
unset color_prompt force_color_prompt

이제 내 메시지가 다음과 같은 것을 볼 수 있습니다.

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\d\A\$ '

이제 가장 큰 고민은 날짜와 시간 사이에 공백이 있을 수 있는지 입니다.

\d\A

프롬프트가 다음과 같기 때문에 -

shirish@think-debian:~Tue Oct 2001:03$

더 큰 문제는 구문을 모르면 프롬프트를 읽을 수 없다는 것입니다. 이 문제를 해결할 방법이 있나요?

답변1

그 과정에서 점차 가치가 쌓이고 댓글도 남길 수 있습니다

PS1='\u@\h:'   # User@Host:
PS1+='\w'      # Working directory
PS1+='\d'      # date
PS1+=' '
PS1+='\A'      # Time
PS1+='\$ '     # Marker

답변2

이제 가장 큰 고민은 날짜와 시간 사이에 공백이 있을 수 있는지 입니다.

예. 날짜와 시간 사이에 공백을 추가합니다.

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\d \A\$ '

더 큰 문제는 구문을 모르면 프롬프트를 읽을 수 없다는 것입니다. 이 문제를 해결할 방법이 있나요?

필요에 따라 프롬프트에 텍스트를 추가할 수 있습니다.

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w date:\d time:\A\$ '

답변3

PS1='\u@\h:\w \d \A\$ '

가독성이 극도로 향상되었습니다.

declare -A prompt=(
    [user]='\u'
    [host]='\h'
    [dir]='\w'
    [date]='\d'
    [time]='\A'
    [prompt]='\$ '
)
PS1="${prompt[user]}@${prompt[host]}:${prompt[dir]} ${prompt[date]} ${prompt[time]} ${prompt[prompt]}"

관련 정보