改變PS1變數的顏色

来源:http://www.cnblogs.com/the-study-of-linux/archive/2016/01/11/5122989.html
-Advertisement-
Play Games

2016.1.11今天學了改變PS1的顏色,怎麼增加PS1變數找到文件(.bash_profile),或者bashrc export PS1="\[\e[32;1m\]Test $PWD> \[\e[0m\]" #顯示綠色,其中Test是額外增加要顯示的內容 export PS1="\[\e[35;...


2016.1.11今天學了改變PS1的顏色,怎麼增加PS1變數找到文件(.bash_profile),或者bashrc
export PS1="\[\e[32;1m\]Test $PWD> \[\e[0m\]"
#顯示綠色,其中Test是額外增加要顯示的內容
export PS1="\[\e[35;1m\]Test $PWD> \[\e[0m\]


#顯示紅色 有參考博客http://blog.chinaunix.net/uid-13954789-id-3137184.html

我們能夠通過配置PS1變數使提示符成為彩色。在PS1中配置字元序列顏色的格式為:

    \[\e[F;Bm\]

    基本上是夾在 "\e["(轉義開方括弧)和 "m" 之間數字值。假如指定一個以上的數字代碼,則用分號將他們分開。

    其中 F 為字體顏色,編號30~37; B 為背景色,編號40~47。

    可通過 \e[0m 關閉顏色輸出;特別的,當B為1時,將顯示加亮加粗的文字,請看下麵的顏色表和代碼表。

    顏色表

    前景 背景 顏色

    ---------------------------------------

    30 40 黑色

    31 41 紅色

    32 42 綠色

    33 43 黃色

    34 44 藍色

    35 45 紫色

    36 46 青色

    37 47 白色

    代碼 意義

    -------------------------

    0 OFF

    1 高亮顯示

    4 underline

    5 閃爍

    7 反白顯示

    8 不可見

    假如想要配置終端提示符的樣式只要把$PS1在~/.bahrc指定即可

"\e[0m"

假如將數字代碼指定為零,則他就會通知終端將前景、背景和加粗配置重置為他們的預設值。您可能會在在提示行結束時使用這個代碼,以使您鍵入的文字成為非彩色的。現在,讓我們看一下這些顏色代碼。請註意下麵的抓屏結果:

要使用這個表,首先請查找您要使用的顏色,然後查找對應的前景編號 (30-37) 和背景編號 (40-47)。例如,假如您喜歡黑底綠字,則可將編號分別設為 32 和 40。然後打開您的提示行定義併在其中添加適當的顏色代碼。下麵的定義:

export PS1="\w> "

變為:

export PS1="\e[32;40m\w> "

到現在為止,提示行儘管已很不錯了,但仍不太完美。在 bash 顯示出工作目錄以後,我們需要使用 "\e[0m" 序列將顏色重新配置為正常值。

export PS1="\e[32;40m\w> \e[0m"

這個定義將顯示一個漂亮的綠色提示行,但我們仍需要做一些掃尾工作。我們無需包括 "40" 這個背景顏色配置,因為他將背景配置為黑色,而黑色是預設顏色。此外,綠色還很暗;我們通過添加一個 "1" 顏色代碼來修正這個問題,這將啟用更亮的加粗文字。除了這個修改之外,我們還需要將全部非列印字元用專用的 bash 轉義序列 "\[" 和 "\]" 括起來。這兩個序列通知 bash,被括起來的字元不占用行上的任何空間,這樣就使自動換行能夠繼續正常工作。沒有這兩個轉義序列,儘管您有了一個很漂亮的提示行,但是假如您鍵入的命令恰好到達終端的最右端,就會造成顯示混亂。下麵是我們最終的提示行:

export PS1="\[\e[32;1m\]\w> \[\e[0m\]"

別擔心在同一個提示行中使用幾種顏色,就像下麵這樣:

export PS1="\[\e[36;1m\]\u@\[\e[32;1m\]\H> \[\e[0m\]"


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 目前最常見的兩種軟體安裝方式:1.dpkg2.rpm1.dpkg最早是由Debian Linux社群開發出來的,通過dpkg,Debian提供的軟體就可以簡單的安裝,同時還能提供安裝後的軟體信息,實在非常不錯,只要是衍生與Debian的其他的Linux發行版也大多使用dpkg這個機制來管理軟體。包括...
  • 辦公室的電腦已經有好幾台自動升級到windows10了。由於用著很不習慣都要求改回windows7.升級了就不支持退回去,只能是全部刪除重新安裝了,很是麻煩。但是也沒有看到哪裡有可以關閉自動升級的地方今天看到一個文章是說微軟有提供一個方法就是修改註冊表的。 具體步驟如下: 1、打開註冊表編輯器 .....
  • 通過ffplay實現攝像頭preview硬體平臺:Jetson TK1 開發板(NVIDIA Tegra K1 Mobile Processor 32bit),寧波舜宇光電SP103A(OV16825)模組軟體平臺:Ubuntu/Linaro 4.8.2-16ubuntu4(Linux versio...
  • 本文目錄列表:1、SQL Server季時間粒度2、SQL Server年時間粒度3、總結語4、參考清單列表SQL Serve季時間粒度 季時間粒度也即是季度時間粒度。一年每3個月是一個季,一年共4季,1月到3月是第1季、4月到6月是第2個季、依次順延。季也是日期時間範圍的,我們也會引入季基準日期....
  • 本文大致整理了自己用過的一些插件的使用感想(就是好不好用)。 在那之前先簡單貼兩條插件須知,知道的可以忽略。1、Alcatraz類似於管理第三方庫的cocoapods,管理插件也有個Alcatraz。安裝的方法也很簡單,如果你以前沒有安裝過那執行下麵指令curl -fsSL https://raw....
  • android動態佈局相比靜態佈局,動態佈局不用再將xml轉變了佈局代碼,提高了一定的效率,當然可以忽略不記。動態佈局主要是比較靈活,可以很快的在代碼中直接修改佈局,並直接使用控制項進行業務邏輯開發。但代碼量通常比較大,維護沒有靜態佈局方便。不過,作為一個android開發人員,掌握一定的動態佈局.....
  • 一,效果圖。二,工程目錄。三,代碼。//點擊任何處,出現城市-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ UIActionSheet *city=[[UIActionSheet alloc] initWithT...
  • apache ab test使用轉載自:http://www.cnblogs.com/super-d2/p/3831155.html#tophttp://blog.chinaunix.net/uid-20382003-id-3032167.html先查看一下版本信息 ab -V(註意是大寫的V)2、...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...