on-my-zsh 中显示绝对路径

本篇文章将介绍如何修改 on-my-zsh 主题,使其显示绝对路径。

查找当前使用的主题:

1
2
3
4
5
# 使用 grep 查找主题配置
grep '^ZSH_THEME' ~/.zshrc

# 显示如下:
ZSH_THEME="robbyrussell"

修改主题配置:

1
vi ~/.oh-my-zsh/themes/robbyrussell.zsh-theme

对配置作以下修改:

1
2
3
...%{$fg[cyan]%}%c%{$reset_color%}
# 修改成
...%{$fg[cyan]%}%d%{$reset_color%}

然后退出重新连接 ssh 即可生效。

其它相关配置提示符如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
%%  一个'%'
#%) 一个')'
%y 当前的tty名
%l 当前的tty名,如 pts/1
%M 完整主机名
%m 主机名(在第一个句号之前截断)
%n 当前用户名
%. %c %C 前两个显示相对路径的当前文件夹名,最后一个是绝对路径(也就是说,前两个在家目录下显示'~',最后那个显示你的用户名),'%'后的数字表示显示几层路径
%N zsh 正在执行的脚本/函数名。如果'%'后跟了数字,似乎还有其他作用
%L 当前shell的层数
%j 当前正在进行的工作数量
%i 与%!类似:The line number currently being executed in the script, sourced file,<br> or shell function given by %N. This is most useful for debugging as part of $PS4.
%! 显示当前历史事件号码(也就是打开shell后第几条命令)
%/ %d 显示当前工作路径($pwd)。如果'%'后面是一个整数,它指定显示路径的元件的数量;没有数字就显示整个路径。一个负整数就是指定主目录,即%-1d代表第一部分
%~ 目前的工作目录相对于~的相对路径
%? 返回最后命令的执行结果的代码
%# 用户组,#(普通用户)/%(超级用户)