liunx系統在終端裡隱藏命令列當前目錄提示

2021-07-27 11:07:01 字數 2801 閱讀 4309

在一些linux系統的終端裡,命令列提示是預設顯示當前工作目錄的絕對路徑,如下:

user@system:/folder1/folder2/folder3/folder4$

當絕對路徑比較長的時候就有點煩了,因為輸入的命令就不得不過行寫(因為第一行裡路徑就占用太多space了)。

而且terminal的視窗標題就是顯示當前目錄的絕對路徑,加上還有個pwd命令可以顯示當前路徑,所以個人感覺沒必要在命令提示那裡占用那麼多地方顯示那麼長的路徑。

在網上找到了解決方法:改變系統變數ps1

檢視當前系統使用的ps1:

echo $ps1 

通常為:

\e]0;\u@\h:\w\a

$\u@\h:\w\$  

然後在找這個問題的解決方法的時候有個解釋特別詳細特別給力,順帶就翻譯了下貼在這裡:

(ps1:當你開啟終端的時候看到的預設提示符。這個提示符是存在乙個叫做 ps1 的環境變數裡的。如果想檢視它的值,在終端輸入:

echo $ps1 

顯示的結果大概如下:

\e]0;\u@\h:\w\a

$\u@\h:\w\$ 

如果想要改變提示符顯示的內容,直接賦值個新值給 ps1 ,比如下面這樣:

export ps1="\u > " 

這樣修改後,終端就會顯示修改後的結果了。

ps2:這是候選提示符。這個提示符會在命令沒完成的時候顯示。比如你輸入:

echo "asd 

然後就按回車的話,候選提示符就會讓你輸入更多行直到你輸入右引號。

ps3:這是用於select(2)。

ps4:這是用於堆疊跟蹤。

使用export進行的修改在重新開啟乙個終端的時候就會失效,如果想要修改長期有效的話,就要把修改結果寫到 .bashrc 裡面(在 /home 目錄裡。在某些系統裡叫做 .bash_profile)。

下面是乙份差不多完整的提示符內容簡寫對應意思的列表:

\a the 'bell' character (「鈴聲」符號)

\a 24h time (24小時制時間)

\d date (e.g. tue dec 21) (日期)

\e the 'escape' charakter (「esc」符號)

\h hostname (up to the first ".") (主機名稱,寫到第乙個「.」)

\h hostname (主機名稱)

\j no. of jobs currently running (ps) (目前正在跑的程序的數目)

\l current tty (當前的tty)

\n line feed (換行符)

\t time (hh:mm:ss) (時間格式)

\t time (hh:mm:ss, 12h format) (時間,12小時格式)

\r carriage return (回車符)

\s shell (i.e. bash, zsh, ksh..)

\u username (使用者名稱)

\v bash version (bash版本)

\v full bash release string (完整的bash發行號)

\w current working directory (當前工作目錄)

\w last part of the current working directory (當前工作目錄的最後一部分)

\! current index in history (以往的當前下標)

\# command index (命令列下標)

\$ a "#" if you're root, else "$" (root身份登陸的時候是「#」,其他身份登陸都是「$」)

\\ literal backslash (取字面意思的反斜槓)

\@ time (12h format with am/pm) (時間,用am/pm的12小時制)

你還可以插入任何字串,或者任何命令,比如:

export ps1="\u \$(pwd) > " 

這裡的 $(pwd) 表示顯示命令 pwd 的輸出結果。

注意:如果命令替換被轉義的話,比如被解釋為 \$(pwd) 的話,那麼每次提示符顯示的時候都會求一次該命令的值;若沒被轉義的話,比如被解釋為 $(pwd) 的話,只會在bash啟動的時候計算一次而已。

如果你想要提示符有顏色比較好看的話,你可以用bash的顏色**來實現。這個**由三部分組成,如下:

40;33;01 

(1)在分號前的第一部分表示字型型別:

00 = none 

01 = 粗體 

04 = 下劃線 

05 = 閃爍 

07 = 顛倒 

08 = 隱藏 

(2)第二和第三部分是顏色和背景顏色:

30 = black 

31 = red 

32 = green 

33 = yellow 

34 = blue 

35 = magenta 

36 = cyan 

37 = white 

設從左邊開始,每一部分都可以被省略。例如,「1」表示粗體,「1;31」表示字型粗體並紅色。你可以通過使用轉義指令 「\33[「 並且以 "m" 結尾來讓你的終端列印出顏色。

數字33 或者 十六進製制的1b 都是ascii碼的」escape「**義)。

翻譯不准的地方歡迎指出,有任何疑問建議直接嘗試然後看效果就知道了,實踐出真知嘛。

最後貼一下我個人折騰出來的ps1:

wm裡建立Liunx作業系統安裝

二 開啟 vmware軟體,選擇建立新的虛擬機器 三 點選選擇自定義,點選下一步。四 選擇 linux作業系統,版本選擇red hat enterprise linux 7 64位,點選下一步。五 虛擬機器名稱可預設也可自行命名,安裝位置依照自己喜好而定,點選下一步。六 學習 rhcsa時,處理器數...

mysql在終端的命令

建立授權 grant select on 資料庫.to 使用者名稱 登入主機 identified by 密碼 修改密碼 mysqladmin u使用者名稱 p舊密碼 password 新密碼 刪除授權 revoke select,insert,update,delete om from test2...

liunx系統的基本命令

linux在學習時,有許多基本命令是必須知道的,分享一下在初學liunx需要的基本命令!1.顯示日期的命令 date 顯示年月日的命令 date y m d 顯示時間的命令為 date h m 2.顯示日曆的指令 cal cal 年份 輸出的為 一年中的所有日期 cal 月份 年份 輸出為 這一年的...