linuxshell主机名,在Linux上shell显⽰⽤户名及主机名
1. 问题描述
最近在服务器上重新安装了⼀点东西,结果登录的shell界⾯变成了显⽰-bash-4.2$,显得很丑⽽且使⽤起来⼗分不⽅便,主要是scp时需要⽤户名和主机名,因此对其进⾏了修改。
2. 解决⽅案
修改当前⽤户的.bash_profile⽂件,在其中加⼊:
export PS1='[\u@\h \W]$ 'shell界面
source .bash_profile,OK,问题解决。
3. 解释
PS1是Linux终端⽤户的⼀个环境变量,⽤来说明命令⾏提⽰符的设置。\u等是特殊字符,可以通过man bash命令查看,其意义如下:
\a an ASCII bell character (07)
\d the date in "Weekday Month Date" format (e.g., "Tue May 26")
\D{format}
the format is passed to strftime(3) and the result is inserted into the prompt string; an empty format results in a locale-specific time representation. The braces are required
\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
\A the current time in 24-hour HH:MM format
\u the username of the current user
\v the version of bash (e.g., 2.00)
\V the release of bash, version + patch level (e.g., 2.00.0)
\w the current working directory, with $HOME abbreviated with a tilde (uses the value of the PROMPT_DIRTRIM variable)
\W the basename of the current working directory, with $HOME abbreviated with a tilde
\! 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
部分特殊字符解释如下:
\u 当前⽤户的⽤户名
\h ⽤.分开的第⼀个主机名
\H 完整的主机名
\W 当前⼯作⽬录的⽬录名,只显⽰路径的最后⼀个⽬录
\w 当前⼯作⽬录的⽬录名,显⽰全路径

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。