Shell 命令提示符

2022-06-17 05:54:12 字數 2021 閱讀 8840

blog:

個人參考:命令提示符

目錄使用者進入 bash 以後,bash 會顯示乙個命令提示符,用來提示使用者在該位置後面輸入命令。

命令提示符通常是美元符號$,對於根使用者則是井號#。這個符號是環境變數ps1決定的,執行下面的命令,可以看到當前命令提示符的定義。

$ echo $ps1
bash 允許使用者自定義命令提示符,只要改寫這個變數即可。改寫後的ps1,可以放在使用者的 bash 配置檔案.bashrc裡面,以後新建 bash 對話時,新的提示符就會生效。要在當前視窗看到修改後的提示符,可以執行下面的命令。

$ source ~/.bashrc
命令提示符的定義,可以包含特殊的轉義字元,表示特定內容。

舉例來說,[\u@\h \w]\$這個提示符定義,顯示出來就是[user@host ~]$(具體的顯示內容取決於你的系統)。

[user@host ~]$ echo $ps1

[\u@\h \w]\$

改寫ps1變數,就可以改變這個命令提示符。

$ ps1="\a \h \$ "

17:33 host $

注意,$後面最好跟乙個空格,這樣的話,使用者的輸入與提示符就不會連在一起。

預設情況下,命令提示符是顯示終端預定義的顏色。bash 允許自定義提示符顏色。

使用下面的**,可以設定其後文字的顏色。

舉例來說,如果要將提示符設為紅色,可以將ps1設成下面的**。

ps1='\[\033[0;31m\]<\u@\h \w>\$'
但是,上面這樣設定以後,使用者在提示符後面輸入的文字也是紅色的。為了解決這個問題, 可以在結尾新增另乙個特殊**\[\033[00m\],表示將其後的文字恢復到預設顏色。

ps1='\[\033[0;31m\]<\u@\h \w>\$\[\033[00m\]'
除了設定前景顏色,bash 還允許設定背景顏色。

下面是乙個帶有紅色背景的提示符。

ps1='\[\033[0;41m\]<\u@\h \w>\$\[\033[0m\] '
除了ps1,bash 還提供了提示符相關的另外三個環境變數。

環境變數ps2是命令列折行輸入時系統的提示符,預設為>

$ echo "hello

> world"

上面命令中,輸入hello以後按下回車鍵,系統會提示繼續輸入。這時,第二行顯示的提示符就是ps2定義的>

環境變數ps3是使用select命令時,系統輸入選單的提示符。

環境變數ps4預設為+。它是使用 bash 的-x引數執行指令碼時,每一行命令在執行前都會先列印出來,並且在行首出現的那個提示符。

比如下面是指令碼test.sh

#!/bin/bash

echo "hello world"

使用-x引數執行這個指令碼。

$ bash -x test.sh

+ echo 'hello world'

hello world

上面例子中,輸出的第一行前面有乙個+,這就是變數ps4定義的。

改變shell命令提示符

改變title prompt command echo ne 033 0 007 這樣在terminal的title就會顯示使用者 機器名 路徑。改變命令提示符的顏色 在 bashrc中新增 綠色 export ps1 033 32m w 033 0m 在 root bashrc 紅色 export...

命令提示符

cd 改變當前目錄 dir 顯示檔案列表 diskcopy 複製軟盤 format 格式化磁碟 md 建立子目錄 type 顯示檔案內容 rd 刪除目錄 ren 改變檔名 cls 清屏 正在執行命令的命令提示符 正在執行命令的命令提示符 適用場合 螢幕上太亂了,或是螢幕上出現亂碼了,清除螢幕上顯示內...

Shell命令提示符及顏色

linux修改shell命令提示符及顏色 設定命令提示符 ps1 e 33 1m e 32m u e 33m h e 36m w e 33m e 32m e 0m ps1中設定字元顏色的格式為 e f bm 其中 f 為字型顏色,編號為30 37,b 為背景顏色,編號為40 47。用 e m 結束顏...