터미널에서 bash shell prompt를 원하는데로 바꾸기 위해 PS1를 설정했을 때, 자칫 한 줄이 넘으면 다음 줄에 이어서 쓰는게 아니라 다시 그 줄에 겹쳐서 쓰는 경우가 있다. 보통 불편한 정도가 아니다. 문제는 escape sequence를 설정하지 않아서다.
예를 들면 .bashrc 또는 .bash_profile 등 bash 설정 파일에서
export PS1="\e[1;33m\w \$ "
이렇게 하면 한 줄을 넘어갈 때 겹쳐 쓰는데, 이럴 때에는 \\[를 추가해서 쓰면,
export PS1="\\[\e[1;33m\w \$ "
겹쳐쓰기 현상이 사라진다.
다음은 bash prompt escape sequences를 설정하는 명령어다.
\a |
an ASCII bell character (07) |
\d |
the date in "Weekday Month Date" format (e.g., "Tue May 26") |
\e |
an ASCII escape character (033) |
\h |
the hostname up to the first `.' |
\H |
the hostname |
\j |
the number of jobs currently managed by the shell |
\l |
the basename of the shell's terminal device name |
\n |
newline |
\r |
carriage return |
\s |
the name of the shell, the basename of $0 (the portion following the final slash) |
\t |
the current time in 24-hour HH:MM:SS format |
\T |
the current time in 12-hour HH:MM:SS format |
\@ |
the current time in 12-hour am/pm format |
\u |
the username of the current user |
\v |
the version of bash (e.g., 2.00) |
\V |
the release of bash, version + patchlevel (e.g., 2.00.0) |
\w |
the current working directory |
\W |
the basename of the current working directory |
\! |
the history number of this command |
\# |
the command number of this command |
\$ |
if the effective UID is 0, a #, otherwise a $ |
\nnn |
the character corresponding to the octal number nnn |
\\ |
a backslash |
\[ |
begin a sequence of non-printing characters, which could be used to embed a terminal control sequence into the prompt |
\] |
end a sequence of non-printing characters |
'컴퓨터 > 리눅스(Linux)·우분투(Ubuntu)' 카테고리의 다른 글
우분투(Ubuntu) LTS란? (0) | 2018.02.27 |
---|---|
우분투 17.04로 업그레이드 (0) | 2017.05.10 |
우분투에서 트랙커(tracker) 중단 시키는 방법 (0) | 2017.02.21 |
우분투에서 인터넷 연결이 안 될 때(이더넷) (0) | 2017.02.20 |
터미널에서 사용 중인 우분투 버전을 알아 보는 방법 (0) | 2016.11.29 |