默认情况下,终端提示显示如下内容:
user@system:/folder1/folder2/folder3/folder4$
Run Code Online (Sandbox Code Playgroud)
您进入文件系统越深,用于输入命令的空间就越少。我可以将其更改为仅显示以下内容:
>
Run Code Online (Sandbox Code Playgroud)
我的意思是,我可以打字pwd来显示我的位置。;)
Oli*_*Oli 172
export PS1='\u@\h: '
Run Code Online (Sandbox Code Playgroud)
这导致oli@bert:我的提示。
如果你真的想要像你要求的那样极简的东西,试试这个:
export PS1='> '
Run Code Online (Sandbox Code Playgroud)
您可以将其附加到~/.bashrc文件的末尾,使其在登录之间保持不变。
你也可以用一些颜色来发挥创意。这是我在服务器上使用的内容:
export PS1='\[\033[0;35m\]\h\[\033[0;33m\] \w\[\033[00m\]: '
Run Code Online (Sandbox Code Playgroud)
给予(在全黑背景上更容易看到):

Ste*_*zzo 114
只是为了扩展 Oli 的答案(以便我为那些速记符号添加书签):
bash 提示 ( stefano@linux:~$) 只是您可能会看到的几个提示中的第一个:
PS1:打开shell时看到的默认提示
它的值存储在名为PS1. 要查看其值,请键入
echo $PS1
这会给你类似的东西
\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$
Run Code Online (Sandbox Code Playgroud)
要更改它,您可以为变量设置一个新值:
export PS1="\u > "
Run Code Online (Sandbox Code Playgroud)
这将导致如下提示:
stefano >
Run Code Online (Sandbox Code Playgroud)PS2:是您的辅助提示。这在命令未完成时显示。键入echo "asd并按下回车键,二次提示会让直至关闭引号你输入更多行。
PS4是用于的提示
栈跟踪(默认值:+)
要使更改永久化,请将它们附加到主目录中的末尾.bash_profile(或.bashrc,请参阅此问题)。
这是您在编写这些时可以使用的或多或少完整的速记列表:
\a “钟”字\A 24小时时间\d 日期(例如,12 月 21 日星期二)\e “逃脱”角色\h 主机名(直到第一个“.”)\H 主机名\j 当前运行的作业数 (ps)\l 当前 tty\n 换行\t 时间(时:分:秒)\T 时间(时:分:秒,12小时格式)\r 回车\s Shell(即 bash、zsh、ksh..)\u 用户名\v bash 版本\V 完整的 Bash 发布字符串\w 当前工作目录\W 当前工作目录的最后一部分\! 历史中的当前索引\# 命令索引\$ 如果您是 root,则为“#”,否则为“$”\\ 字面反斜杠\@ 时间(上午/下午的 12 小时格式)您当然可以插入任何文字字符串和任何命令:
export PS1="\u \$(pwd) > "
Run Code Online (Sandbox Code Playgroud)
当$(pwd)站在那儿的PWD“输出”。
\$(pwd),则每次显示提示时都会对其进行评估,否则,如在 中$(pwd),它仅在 bash 启动时评估一次。如果您希望提示以颜色为特色,您可以使用 bash 的颜色代码来实现。代码由三部分组成:
40;33;01
Run Code Online (Sandbox Code Playgroud)
分号前的第一部分表示文本样式。
第二和第三部分是颜色和背景色:
每个部分都可以省略,假设从左边开始。即“1”表示粗体,“1;31”表示粗体和红色。您可以通过将指令转义\33[并以m. 33 或十六进制的 1B 是 ASCII 符号“ESCAPE”(ASCII 字符集中的特殊字符)。例子:
"\33[1;31mHello World\33[m"
Run Code Online (Sandbox Code Playgroud)
以鲜红色打印“Hello World”。
另一种选择是在工作目录路径太长时缩短它:修剪终端命令提示符工作目录
创建一个实现所需修剪逻辑的小型 python 脚本。
示例:~/short.pwd.py
Run Code Online (Sandbox Code Playgroud)import os from commands import getoutput from socket import gethostname hostname = gethostname() username = os.environ['USER'] pwd = os.getcwd() homedir = os.path.expanduser('~') pwd = pwd.replace(homedir, '~', 1) if len(pwd) > 30: pwd = pwd[:10]+'...'+pwd[-20:] # first 10 chars+last 20 chars print '[%s@%s:%s] ' % (username, hostname, pwd)现在从终端测试它:
Run Code Online (Sandbox Code Playgroud)export PROMPT_COMMAND='PS1="$(python ~/.short.pwd.py)"'如果您对结果没问题,只需将命令附加到您的 ~/.bashrc
我经常想暂时这样做。这是我所做的:
$ export OLD_PS1=$PS1 # save Long Prompt to OLD_PS1
$ export PS1="\u > "export PS1="\u $ " # change to PS1 to Short Prompt
$ export PS1=$OLD_PS1 # restore Long Prompt to PS1
Run Code Online (Sandbox Code Playgroud)
我希望这可以帮助别人。
| 归档时间: |
|
| 查看次数: |
132113 次 |
| 最近记录: |