![如何在 shell 的提示符下自动显示光标](https://linux22.com/image/87393/%E5%A6%82%E4%BD%95%E5%9C%A8%20shell%20%E7%9A%84%E6%8F%90%E7%A4%BA%E7%AC%A6%E4%B8%8B%E8%87%AA%E5%8A%A8%E6%98%BE%E7%A4%BA%E5%85%89%E6%A0%87.png)
我运行以下一系列命令,将curser带到shell终端的提示符下。
$ NL=' # << press enter
' # << press enter again
$ PS1=${PS1}${NL}
我每次登录时都必须这样做。我怎样才能自动化它?我尝试添加这些相同的语句~/.profile
并重新启动。没有运气。
编辑:
我是这样做的。我在(我创建了它)中添加了以下(我最喜欢的 bash 提示符)行~/.bashrc
。
export PS1="===================\n\n\d \A \u@\H [\w]\n\\$ \[$(tput sgr0)\]"
答案1
使用NL=$'\n'
。$NL
使用它时还需要双引号(也可能$PS1
,取决于它包含的内容......无论如何将其包含在双引号内)。
例如添加到您的~/.bash_profile
(或者~/.profile
如果您愿意的话):
NL=$'\n'
PS1="${PS1}${NL}"
顺便说一句,从长远来看,我敢打赌您会厌倦额外的换行符浪费了多少宝贵的垂直终端空间。屏幕的宽度往往远大于高度(例如,16:9 宽高比的一些常见分辨率为 1920x1080 或 2560x1440,而 16:10 的常见分辨率为 1920x1200 或 2560x1600),因此垂直屏幕空间更加稀有且更有价值。浪费的空间越多,您在屏幕上立即看到的有用信息就越少。
答案2
您可能希望明确提示的内容:
PS1='\u@\h:\w\n\$ '
看https://www.gnu.org/software/bash/manual/bashref.html#Controlling-the-Prompt
我有一个三行提示符对我来说非常有用。