自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux 的八個有用且有趣的 Bash 提示

系統(tǒng) Linux
這里我們提供了一些 Bash 提示,并不是所有的都是嚴(yán)肅的。例如,我們在列表中的第一個條目可以為您在使用命令行時帶來一點樂趣!

 許多人并不認(rèn)為Linux命令行提示符是一個有用的元素,甚至不太注意它。然而,一個有用的提示符可以改變您使用命令行的方式,并通過擴展,改變您的系統(tǒng)。本文通過示例向您展示了許多有用和有趣的Bash提示。請注意,我們從提示符本身開始,然后進一步說明如何使用它們。

這里我們提供了一些 Bash 提示,并不是所有的都是嚴(yán)肅的。例如,我們在列表中的第一個條目可以為您在使用命令行時帶來一點樂趣!

1、執(zhí)行命令之后顯示“字符表情”

這個提示很有趣但很有用!這個想法是,只要你執(zhí)行成功的命令,你的提示就會顯示一個快樂的字符表情。

相反,當(dāng)命令失敗時,你會看到一個悲傷的字符表情。

要應(yīng)用它,請使用以下代碼: 

  1. PS1="\`if [ \$? = 0 ]; then echo \[\e[33m\]^_^\[\e[0m\]; else echo \[\e[31m\]O_O\[\e[0m\]; fi\`[\u@\h:\w]\\$" 

效果圖如下:

這可能看起來令人困惑,但我們使用 if 語句來確定命令是好是壞。從那里,我們在顏文字周圍使用一些轉(zhuǎn)義,以確保它們以正確的方式顯示。

2、當(dāng)終端發(fā)出錯誤命令時更改 Bash 提示的顏色

可以說,這個提示是列表中最有用的。像上面一樣,如果您的最后一個命令未能運行,提示會更改顏色,但也會縮短長路徑并包含每個命令的 Bash 歷史記錄編號以便于檢索。 

  1. PROMPT_COMMAND='PS1="\[\033[0;33m\][\!]\`if [[ \$? = "0" ]]; then echo "\\[\\033[32m\\]"; else echo "\\[\\033[31m\\]"; fi\`[\u.\h: \`if [[ `pwd|wc -c|tr -d " "` > 18 ]]; then echo "\\W"; else echo "\\w"; fi\`]\$\[\033[0m\] "; echo -ne "\033]0;`hostname -s`:`pwd`\007"' 

效果圖如下:

同樣,這看起來很難實現(xiàn),但它很簡單。我們再次使用 if 語句以及顏色代碼來突出顯示各種消息。

您可以將這些顏色設(shè)為您喜歡的任何顏色,但我們會運用一些邏輯思維,更改后的顏色應(yīng)該對您有所幫助,而不是僅僅為了進行更改而更改。

3、將Bash提示擴展到多行

有時,你可能希望在 Bash 提示中包含大量信息。這個 Bash 提示可能會讓你感興趣。它顯示日期、時間、完整目錄路徑、用戶名和主機名、活動終端,甚至文件計數(shù)和空間使用情況。 

  1. PS1="\n\[\033[35m\]\$(/bin/date)\n\[\033[32m\]\w\n\[\033[1;31m\]\u@\h: \[\033[1;34m\]\$(/usr/bin/tty | /bin/sed -e 's:/dev/::'): \[\033[1;36m\]\$(/bin/ls -1 | /usr/bin/wc -l | /bin/sed 's: ::g') files \[\033[1;33m\]\$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed 's/total //')b\[\033[0m\] -> \[\033[0m\]" 

效果圖如下:

在這里,我們不需要 if 語句,因為提示本身將具有靜態(tài)布局和動態(tài)內(nèi)容。您可能還會發(fā)現(xiàn)很難解析這個元素中的不同元素。我們的建議是應(yīng)用它,然后逐條運行提示。通過一些交叉引用,您將開始了解提示是如何組合的。

4、使用顏色使您的 Bash 提示更具可讀性

除了很好地使用顏色來分隔不同的信息之外,這個提示沒有什么特別之處。如您所見,它提供了時間、用戶名和主機名以及當(dāng)前目錄。 

  1. PS1="\[\033[35m\]\t</\[\033[m\]-\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]\$" 

效果圖如下:

這是最有用的 Bash 提示之一,也是您自定義提示時首先要查看的區(qū)域。它可以為您學(xué)習(xí)自定義提示的工作原理提供良好的基礎(chǔ)。

5、顯示完整目錄路徑

就像使用顏色一樣,這個提示是一個干凈且最少的兩行提示(盡管頂部有一個空行)。

我們在第一行顯示完整的工作目錄路徑,然后在底部顯示用戶。 

  1. PS1="[\[\033[32m\]\w]\[\033[0m\]\n\[\033[1;36m\]\u\[\033[1;33m\]-> \[\033[0m\]" 

效果圖如下:

如果不想在提示中使用空行,可以去掉第一個\n。但是,請調(diào)整布局和格式,因為每個終端體驗都會因您的計算機和命令行設(shè)置而異。

6、顯示后臺作業(yè)計數(shù)

這個兩行顯示我們尚未在 Bash 提示中使用的信息。我們提供后臺作業(yè)的運行記錄。如果您同時處理多項任務(wù)但需要密切關(guān)注任何活動,這將非常有用。

第一行是用戶名和主機名,以及工作目錄路徑。在第二行,我們有歷史編號和后臺運行的作業(yè)計數(shù)。 

  1. PS1='\[\e[1;32m\]\u@\H:\[\e[m\] \[\e[1;37m\]\w\[\e[m\]\n\[\e[1;33m\]hist:\! \[\e[0;33m\] \[\e[1;31m\]jobs:\j \$\[\e[m\] ' 

效果圖如下:

盡管它可以為您提供有關(guān)系統(tǒng)活動的一些急需的信息,但它沒有什么特別之處。您甚至可以將其轉(zhuǎn)換為更復(fù)雜的提示,并添加 if 語句和顏色編碼以在作業(yè)達到特定級別時通知您。

7、顯示工作目錄的信息

有了這個,我們會在第一行顯示用戶名和主機名、作業(yè)計數(shù)以及日期和時間。下面是當(dāng)前目錄,以及目錄中的文件數(shù)量和一些有關(guān)磁盤使用情況的信息。 

  1. PS1="\n\[\e[30;1m\]\[\016\]l\[\017\](\[\e[34;1m\]\u@\h\[\e[30;1m\])-(\[\e[34;1m\]\j\[\e[30;1m\])-(\[\e[34;1m\]\@ \d\[\e[30;1m\])->\[\e[30;1m\]\n\[\016\]m\[\017\]-(\[\[\e[32;1m\]\w\[\e[30;1m\])-(\[\e[32;1m\]\$(/bin/ls -1 | /usr/bin/wc -l | /bin/sed 's: ::g') files, \$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed 's/total //')b\[\e[30;1m\])--> \[\e[0m\]" 

效果圖如下:

所有這些提示的最大問題是弄清楚圍繞格式化和轉(zhuǎn)義發(fā)生了什么。但是,與多行提示一樣,您應(yīng)該一點一點地解決這個問題,直到您了解整體結(jié)構(gòu)。

您甚至可以一次輸入一部分并注意它是否顯示或是否有錯誤,然后處理完整的代碼段。

8、創(chuàng)建你自己的 Bash 提示

自定義 Bash 提示。

您可以結(jié)合以上任何一項和所有內(nèi)容來創(chuàng)建您自己的自定義 Bash 提示。例如,這是對列表中第七個的修改,但已更改為占用更少的空間并包含一些特定和相關(guān)的信息。

雙線式總是更緊湊,因為您可以看到完整路徑,而不會減少您使用的命令的空間。 

  1. PS1="\n\[\e[32;1m\](\[\e[37;1m\]\u\[\e[32;1m\])-(\[\e[37;1m\]jobs:\j\[\e[32;1m\])-(\[\e[37;1m\]\w\[\e[32;1m\])\n(\[\[\e[37;1m\]! \!\[\e[32;1m\])-> \[\e[0m\]" 

效果圖如下:

到現(xiàn)在為止,您可能已經(jīng)了解此提示的作用,但我們的建議是嘗試創(chuàng)建自己的提示而不是粘貼此提示。這樣,您就可以開始了解不同元素如何協(xié)同工作,甚至可能想出您自己的自定義 Bash 提示。

總結(jié)

如果您經(jīng)常使用命令行,或者在啟動終端應(yīng)用程序時有特定需求,那么自定義提示可能是一個好主意。不需要太多知識,在很多情況下,您可以從其他開發(fā)人員那里找到您需要的提示。 

 

責(zé)任編輯:龐桂玉 來源: Linux公社
相關(guān)推薦

2023-08-13 08:29:27

ChatGPT指令AI

2009-10-19 10:13:42

LinuxBash命令提示行

2023-02-07 10:13:33

2011-11-08 11:43:36

CIO云計算

2025-02-26 11:05:03

2023-12-31 19:11:26

2021-10-14 10:54:30

云計算

2025-04-03 08:27:00

Python代碼開發(fā)

2023-05-15 18:29:02

Linux操作系統(tǒng)

2024-01-29 18:02:46

2022-12-01 16:53:27

NPM技巧

2017-04-20 12:51:28

2017-01-05 09:59:45

2012-10-29 11:01:17

2022-06-16 08:35:10

CSS屬性前端

2018-01-16 00:27:59

2018-08-21 05:03:04

NV overlay網(wǎng)絡(luò)虛擬化網(wǎng)絡(luò)

2012-11-20 10:01:40

程序員

2022-12-15 16:38:17

2022-12-07 12:33:22

云計算
點贊
收藏

51CTO技術(shù)棧公眾號