當前位置:首頁 » 操作系統 » linuxps1的設置

linuxps1的設置

發布時間: 2023-03-15 18:38:07

linux 字體顏色設置

在linux中,我們在編輯時需要對文檔編輯或者一些信息的顯示加上顏色,增強閱讀的效果

格式: echo -e "\033[字體顏色;字背景顏色m字元串\033[0m"

要顯示什麼顏色,優先是先判斷位置,按語法上來說,應該是先字體色,然後是背景色,但是字體色的地方數值為43,所以判斷為背景的顏色,而在後面的31本應該是背景色,結果數值31位字體的顏色,所以顯示的效果是字體的顏色為紅色,而不是背景紅色,假設如彎這個31是數值41,則表示背景的為紅色,整體的效果就是紅色背景,字體處沒有顏色,為默認的白色,且效果是閃爍。

其中設置顏色的格式為:\033[ ; m …… \033[0m,其中ascii code是對顏色調用的始末.也可以表示為\e[F;Bm…….\e[0m

字背景顏色范圍: 40--49                  字顏色: 30--39

例如顯示紅色,其中紅色^[[31mred^[[0m其中^[是在插入編輯模式下按鍵進去額ctr+v+[這三個按鍵輸入的。

假設寫在文檔tt1寫入對應的語句來查看,通過cat  tt1驗證效果

^[[31mred^[[0m :表示對應的字是紅色字體,沒有底色,如下截圖

^[[31mred^[[44m:表示紅色字體,底色為紫紅色。假設寫在文檔tt1,後面cat tt1.這個屏幕底色都是藍色,字都是紅色如下截圖

^[[31;44mred^[[0m:表示紅色字體,字和屏幕的底色為藍色,背景沒有底色,和^[[31mred^[[44m效果一樣。如下截圖

^[[31;44mred^[[44m:表示紅色字體,底色都是藍色

在命令行里輸入命令:echo -e '\e[43;31;4mmage\e[0m',得到如下的效果

PS1是Linux終端用戶的一個環境變數,用來說明命令行提示符的設置。在終端輸入命令:echo $PS1,就會輸出PS1的定義:

默認的PS1變數值為 : PS1="[\u@\h \W]$"

PS1的定義中個常用的參數的含義如下:

給PS1賦值如下:

PS1="[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[34;40m\]\h\[\e[37;40m\] \W]\\$\[\e[0m"

這里需要注意,顏色的結束調用符號,要放在最後面,否則當使用命令history查看歷史命令時,會出現各種異常的顯示

正確的結果得到的結果如下圖

當把結束符調整到$前面,如PS1="[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[34;40m\]\h\[\e[37;40m\] \W]\[\e[0m\\$",使用history查找的時候出現了如下的異常顯示

注意,這里賦值的時候要用單引號才能得到要帶橡拆的效果,只是單純改變顏色,其他值不改變,如果賦值用雙引號,如蠢棗下

錯誤寫法:PS1="[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[34;40m\]\h\[\e[37;40m\]\W]\[\e[0m\$"

得到的效果如下:

如果是root時,提示符為:# ,普通用戶則為:$,但是雙引號後root的提示符為$,是不對的

解決辦法:如果用雙引號,需要再\$前再加一個\,語句如下

PS1="[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[34;40m\]\h\[\e[37;40m\] \W]\\$\[\e[0m"

賦值為PS1='\[\e[43m\][\[\e[31m\]\u@\[\e[34m\]\h \W]\$\e[0m'

效果如下截圖

這個例子,我們可以明顯看出,\e[顏色值m這個是說明接下來的顏色從這里開始是什麼顏色,\e[0m說明的是顏色的結束位置,

這里需要注意的是,如果沒有通過\[   \]對每一個顏色進行界定,使用過程,如上翻歷史頁,就會出現顯示異常。

將設置好的PS1變數寫到家目錄下的.bashrc 裡面,這樣後面開啟的終端都有效。

$ vim .bashrc

打開後添加一行

PS1="[\[\e[31;40m\]\u\[\e[37;40m\]@\[\e[34;40m\]\h\[\e[37;40m\]\W]\[\e[0m\\$"

保存退出再次登錄時顯示的顏色也會是我們設定的值了。

❷ 我想在我的 linux 環境下設置PS1 要求是ps1裡面有當前時間 並且隨著每次的shell 時間隨著改變。請問能辦到

PS1變數主要的參數說明
07-16 by LinuxA
在變數中,有PS1和PS2,他們都是命令提示符,PS1是最長見的,我們在命令行中輸入命令的時候,會在前面看到類似這樣的東西[root@localhost ~],這就是PS1的命令提示符;PS2就是我們在一行中要寫入很長的命令,但是我現在想換行了,PS2就是你使用「\」換行符後,見到的提示符。下面是提示符變數中能用遲鎮的一些主要參數

\d :代表日期,格式為 Weekday Month Date,
\H :完整的主機名稱。
\h :僅顯示主機名稱中第一個名備搜字。
\t :顯示時間,格式是 24 小時制(HH:MM:SS)
\A :顯示時間,格式是24 小時制(HH:MM)
\T :顯示時間,格式是12 小時制
\u :目前使用者的賬號名
\v :BASH shell的版本
\w :完整的工作目錄名仿旦歷稱
\W :利用 basename 取得工作目錄名稱,所以僅會列出最後一個目錄名。
\# :所使用的第幾個命令
\$ :如果是 root用戶時,則提示字元是 # ,非root用戶時提示符是 $

❸ linux下變數PS1的設置問題

PS1='[\u@\h \w #\#7]\$'
\u:目前賬戶
\h:主機名
\w:顯示完整的工作目錄
\#:執行的第幾條笑昌命令
不是以\開頭就是字元串字面值,#\#7這裡面第一個#號和最後一個7就是字面的意思,中間的\#就代表是第改升蘆幾條命令。

這樣就看明白了吧,比如你在主目錄核帶執行第一條命令就是:
[root@localhost ~ #17]#
第二條命令就是:
[root@localhost ~ #27]#

❹ Linux終端提示符PS1設置

linux終端提示符默認如下顯示效果

這里主要想在終端提示這里看襪滾到 登錄用戶 伺服器ip 絕對路徑 ,如下顯示:

這里主要通過PS1變數來進行設置

ps1默認備好帆為 [u@h W]$
各提示符的含義如下:

由此可知,默認顯示當前用戶、主機的第一個仿雹名字、當前工作目錄
可以將PS1修改為如下:

上面還包含提示符顏色的設置,具體可以參考 PS1設置

如果想PS1的設置永久有效,可以在/etc/profile或.bashrc文件里進行設置,然後打開一個新的終端就會看到新設置的提示符生效了。
但是這里可能會發現,主機名顯示的不是ip,顯示如下:

原因是這里的hostname不是ip

因為需要修改hostname,提供一個快速永久修改hostname的方法

這時hostname就改成主機的ip了,
重新打開終端後就變成了想要的終端提示符

關於linux的 PS2、PS3、PS4 可以參考 linux下PS1、PS2、PS3、PS4最全詳解

❺ Linux Shell的提示字元設置 - PS1變數用法

當每次在Linux中使用回車執行命令之後,都會回到最開始的提示字元處,這個過程就是取用了set命令下自定義變數PS1的值。

此處的 [\u@\h \W]\$ 就是 [cadmin@localhost ~]$ 的通用格式,通過修改PS1變數可以達到修改提示字元的目的。在這之前,需要先了解此處用的符號含義:

經過調整,自己最習慣的排列方式為 \u @ \h:\w\$

PS1中的顏色參數格式為\[\e[F;Bm\],F代表文本前景色,B代表背景色,這一串參數的位置就是這個顏色開始生效的位置,且後出現的顏色參數會覆蓋前面的顏色參數。
例如 \[\033[01;32m\]\u @ \h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ 賦值給PS1後,提示字元變成:

在當前shell裡面的修改都只是暫時性的,只有將對應變數的賦值加入到對應用戶的.bashrc下,才能在啟動時就生效。

在文件最後加上 PS1="\[\033[01;32m\]\u @ \h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$" ,然後 source .bashrc 即可。

❻ linux中的PS1=%是什麼

PS1:命令行提示符環境變數

下面是PS1變數中各特殊符號的含義:

\a 顯示系統日期,格式:星期 日期

例:PS1="\d >" 結果:六 10月 24 >

\A 顯示系統時間,格式:HH:MM

例:PS1="\A >" 結果:21:04 >

\t 顯示系統時間,格式:HH:MM:SS (24小時制)

例:PS1="\t >" 結果:21:04:32 >

\T 顯示系統時間,格式:HH:MM:SS (12小時制)

例:PS1="\T >" 結果:09:04:32 >

\h 顯示主機名稱(簡稱)

例:PS1="\h >" 結果:CentOS >

\H 顯示主機名稱(全稱)

例:PS1="\H >" 結果:CentOS.localdomain >

註:這里對主機名稱說明一下,如果查看本機主機名稱,直接執行命令"hostname",如果想修改主機名稱,則要以"root"用戶許可權,對 "/etc/sysconfig/network "文件進行修改

\u 顯示用戶名稱

例:PS1="\u >" 結果:root >

\v 顯示 bash 版本號

例:PS1="\v >" 結果:3.2.25 >

\w :完整的工作目錄名稱。根目錄會以 ~代替

例:當前路徑 /root/test

PS1="\w >" 結果:~/test >

\W :顯示以 "basename" 命令取得路徑信息的最底層目錄名稱

例:當前路徑 /root/test

PS1="\W >" 結果:test >

\# :顯示當前用戶要求系統執行的命令的序號

例:執行 PS1="\u \# >" 結果:root 1 >

再執行 ls -la 結果:root 2 >

再執行 clear 結果:root 3 >

\$ :提示字元,如果是root時,提示符為:# ,普通用戶則為:$

註:這個提示字元我試驗了,可試改過後,即使是"root"用戶,也是顯示"$",不大明白是為什麼。

這個我找到原因了,"\$"一定要寫成 "\\$" 這樣就可以了。

默認的PS1內容為: PS1='[\u@\h \W]\$ ' ,所以默認的提示符就是: [root@CentOS ~]#

如果想要永久的變更系統命令提示符,則要對 "/etc/bashrc" 進行修改,退出再進入,就不會恢復原來的了。

方法如下:執行 "cat /etc/bashrc | grep PS1",找到提示符變數設置的代碼,然後執行 "vi /etc/bashrc"對前一命令查到的代碼進行修改,並保存。

❼ Linux命令行提示符美化(PS1&PS2&PS3&PS4)

PS1是主提示符變數,也是默認提讓信示符擾滑埋變數。默認值 [u@h W]$ ,顯示用緩螞戶主機名稱和工作目錄。

基本上通過設置PS1來定義命令行提示字元即可,最常用的需求就是顯示登錄的用戶名、主目錄、主機名等。

默認的是:

PS1變數可以使用的參數值有如下:

PS2一般使用於命令行里較長命令的換行提示信息,比如:

❽ linux 怎麼設置PS1

這個PS1
(是數字1不是字母i)是我們的
命令提示符.
每當我們按下[Enter]按鍵去執行某個命令的時候,最螞戚後會再次出現提示字元時,則會主動的去讀取這個變數的值了.
每個版本bash的SPI變數內的特殊符號也許會有悶皮陵一些差異.我們可以用man
bash去查詢一下相關的變數.
下面列出幾個常用的PS1變數內特殊符號的意義.
\d
:代表日期,格式為
weekday
month
date
\H
:完整的主機名
\h
:僅僅取得主機名稱的第一個名字
\t
:顯示時間,為24小時格式.例如:HH:MM:SS
\T
:顯示時間,為12小時格式.
\A
:顯示時間,為24小時格式,
HH:MM
\u
:目前使用者的帳號名稱
\v
:BASH的版本信息
\w
:完整的目錄工作名稱.根目錄會以~取代.
\W
:利用basename取得工作目錄名稱,所以僅僅會列出最後一個目錄名
\#
:下達的第幾個命令
\$
:提示字元,如果是管理員的則提示為#,否則就是$
根據自己當前Linux的提示內容,可以得出PS1的內容為:'\[\u@\h
\W\]\$'
這樣就理解為什麼我們的提示字元會是:[root@linux
~]#了吧.
我們也可以自己設置一個
設置以下命令:PS1='[\u@\h
\w
\A
#\#]\$
'
那麼我們的命令提示符則為:[root@linux
/home
17:02
#85]#
注意,時間後面的是,我們當前執行命令的次數,沒執行一次命令則會握頌加1

熱點內容
安卓怎麼分屏截屏 發布:2025-08-24 05:36:00 瀏覽:224
安卓手機wf沒網怎麼回事 發布:2025-08-24 05:07:08 瀏覽:975
一直叫痛ftp 發布:2025-08-24 04:42:33 瀏覽:506
更新數據的sql命令是 發布:2025-08-24 04:42:02 瀏覽:407
安卓桌面百度有料廣告如何取消 發布:2025-08-24 04:41:52 瀏覽:109
暮色森林伺服器我的世界 發布:2025-08-24 04:40:26 瀏覽:719
演算法即是 發布:2025-08-24 04:37:37 瀏覽:361
時間壓縮包 發布:2025-08-24 04:22:04 瀏覽:74
如何不記住密碼 發布:2025-08-24 04:13:06 瀏覽:670
odex反編譯工具 發布:2025-08-24 04:02:15 瀏覽:710