oh my zsh終端使用者名稱設定(PS1)

2021-08-19 09:10:03 字數 2248 閱讀 6789

zsh安裝,參考 oh-my-zsh

預設的 ps1 為

ps1='[

\u@\h\w]

\$'

網上對這個的處理大多是開啟.bashrc然後修改ps1或者重新定義修改ps1

oh-my-zsh的 shell 是zsh,明顯不能在.bashrc中改

不信可以在終端輸入

echo

$ps1

或者

echo

$prompt

可以看到其定義為

$ %

%~%$(git_prompt_info)

這和.bashrcps1的定義是不同的,根本無從下手。

於是又有人說那就在.zshrc中改,我試過,發現改了以後終端的顯示會不正常,比如linux的指令都有返回值,一般為0,其他表示執行錯誤之類。

oh_my_zsh是可以用符號提醒使用者的上乙個指令是否執行成功的,如果在.zshrc重新定義ps1,這個功能將會失效。所以只能用特別的方式。

cd ~/

.oh-my

-zsh/themes

然後輸入

echo

$zsh_theme

檢視自己主題,我的是robbyrussell,然後輸入

vim robbyrussell.zsh-theme
可以看到

local ret_status="%(?:%➜ :%➜ )"

prompt='$ %%~% $(git_prompt_info)'

zsh_theme_git_prompt_prefix="%git:(%"

zsh_theme_git_prompt_suffix="% "

zsh_theme_git_prompt_dirty="%) %✗"

zsh_theme_git_prompt_clean="%)"

由於oh_my_zsh時常會有版本更新,為了避免我們修改的跟更新的版本有衝突,建議不要修改robbyrussell.zsh-theme,而是將其拷貝出來,命名為自己的主題檔案,比如叫做myrobbyrussell.zsh-theme,然後只對myrobbyrussell.zsh-theme進行修改。

修改後將~/.zshrc中的

zsh_theme="robbyrussell"

改為

zsh_theme="myrobbyrussell"

這樣就能避免衝突了。

prompt='%%m@%%(?..%?%

1v)%n:%%%~#'

prompt='%-> %%p%%d %$(git_prompt_info)%% %~#:'
prompt='%-> %%p%%d %$(git_prompt_info)%% %%(?..%?%1v)%~#: '
prompt='%-> %%n%@%%m %%p%%~ %$(git_prompt_info)%% %%(?..%?%

1v)%? %# '

code

info

%t系統時間(時:分)

%*系統時間(時:分:秒)

%d系統日期(年-月-日)

%n你的使用者名稱

%b - %b

開始到結束使用粗體列印

%u - %u

開始到結束使用下劃線列印

%d你目前的工作目錄

%~你目前的工作目錄相對於~的相對路徑

%m計算機的主機名

%m計算機的主機名(在第乙個句號之前截斷)

%l你當前的tty

%n登入名

Linux 終端使用者名稱變成 sh 4 3

今天突然想改一下預設的shell,預設的shell是 bin bash,我通過修改 etc passwd檔案修改了自己使用者下面的shell,啟動後終端使用者名稱久變成了sh 4.3 這個只要在通過chsh切換過來就好了 cjx ubuntu chsh password changing the l...

更改Linux終端使用者名稱顯示顏色的PS1的用法

在linux中,ps1是乙個全域性變數,檢視ps1的格式如 root centos7 echo ps1 u h w ps1 u h w d 代表日期,格式為weekday month date,例如 mon aug 1 h 完整的主機名稱。例如 我的機器名稱為 fc4.linux,則這個名稱就是fc...

git 設定使用者名稱

1 使用者名稱和郵箱的作用 使用者名稱和郵箱位址是本地git客戶端的乙個變數 使用者每次提交 都會記錄使用者名稱和郵箱 2 設定 2.1 設定使用者名稱 git config global user.name username 2.2 設定郵箱 沒有雙引號 git config global use...