bash參考手冊之六(Bash特性)續六

6.8 目錄堆棧

目錄堆棧內建命令: 操作目錄堆棧的Bash內建命令。

目錄堆棧是最近訪問的目錄的列表。內建命令 pushd 在改變當前目錄時,向堆棧增加目錄,而內建命令 popd 從堆棧移除指定的目錄,並改變當前目錄到被移除的目錄。內建命令 dirs 顯示目錄堆棧的內容。

目錄堆棧的內容也是shell變量 DIRSTACK 的值。

6.8.1 目錄堆棧內建命令

dirs
dirs [+N | -N] [-clpv]
顯示當前記錄的目錄。 pushd 命令添加目錄到列表中,而 popd 命令從列表中移除目錄。
+N
顯示第 N 個目錄(當使用不帶選項的 dirs 命令時,顯示的命令列表,從左開始數),從0開始。
-N
顯示第 N 個目錄(當使用不帶選項的 dirs 命令時,顯示的命令列表,從右開始數),從0開始。
-c
刪除所有元素,以清除目錄堆棧。
-l
產生長列表;默認的列表格式中,使用波浪線代表home目錄。
-p
使dirs在每一行上顯示一個目錄堆棧中的元素。
-v
使dirs在每一行上顯示一個目錄堆棧中的元素,並且在每行前面顯示該元素在堆棧中的索引。

popd
popd [+N | -N] [-n]
從目錄堆棧中移除頂端的元素,並 cd 到新的頂部目錄。當沒有參數時, popd 從堆棧頂部移除目錄,並且執行 cd 命令到新的頂部目錄。對於用dirs列出的內容,元素從0開始計數,例如: popd等價於 popd +0。
+N
移除第 N個目錄(當使用不帶選項的 dirs 命令時,顯示的命令列表,從左開始數),從0開始。
-N
移除第 N 個目錄(當使用不帶選項的 dirs 命令時,顯示的命令列表,從右開始數),從0開始。
-n
在從堆棧中移除目錄時,不執行改變目錄的操作,即只操作堆棧。

pushd
 pushd [-n] [+N | -N | dir ]
保存當前目錄到目錄堆棧的頂部,並 cd 到 dir。若沒有參數,則 pushd 交換頂部的兩個目錄。
-n
在向堆棧中增加目錄時,不執行改變目錄的操作,即只操作堆棧。
+N
通過旋轉堆棧,把第N個目錄(當使用不帶選項的 dirs 命令時,顯示的命令列表,從左開始數,從0開始)帶到列表頂部。
-N
通過旋轉堆棧,把第N個目錄(當使用不帶選項的 dirs 命令時,顯示的命令列表,從右開始數,從0開始)帶到列表頂部。
dir
把當前工作目錄放到堆棧頂部,並執行 ‘cd dir’,cd到dir目錄。

6.9 控制提示符

Bash在每次打印提示符之前都檢測變量 PROMPT_COMMAND 的值。如果 PROMPT_COMMAND 被設置,並且有非空值,則計算該值,並打印到命令行上。
此外,下面的表格描述了可以出現在提示符變量中的特殊字符:
\a

響鈴字符。

\d

日期,格式是 "Weekday Month Date" ,(例如: Tue May 26)

\D{format}

format 被傳送給 strftime(3) ,然後把結果插入到提示符字符串中,空的 format 的結果是環境的locale指定的格式。括號是必須出現的。

\e

逃逸字符。

\h

主機名,第一個 ‘.’ 字符之前的部分。

\H

主機名。

\j

shell當前管理的作業數目。

\l

shell終端設備名的基礎名字。

\n

新行符號。

\r 

回車換行符號。

\s

shell的名字,$0的基礎名(最後的斜槓後面的部分)。

\t

時間,24小時格式:HH:MM:SS 。

\T

時間,12小時格式:HH:MM:SS 。

\@

時間,12小時格式:am/pm 。

\A

時間,24小時格式:HH:MM 。

\u

當前的用戶名。

\v

Bash的版本。(例如 2.00)

\V

Bash的發行版,版本號+補丁號(例如 2.00.0)

\w

當前的工作目錄,把$HOME縮寫成波浪號(使用 $PROMPT_DIRTRIM 變量)。

\W

$PWD 的基礎名,把$HOME縮寫成波浪號。

\!

這個命令的歷史號碼。

\#

這個命令的命令號碼。

\$

如果有效用戶的uid是0,則是#,否則是 $。

\nnn

ASCII是8進制nnn的字符。

\\

反斜槓

\[

開始一段非打印字符。用於嵌入終端控制序列到提示符中。

\]

終止一段非打印字符。

命令號碼和歷史號碼一般是不同的,命令的歷史號碼是它在歷史列表中的位置,該列表是從歷史文件中讀取到的(見 Bash歷史工具 章節),而命令號碼是在當前shell會話中執行的命令序列中的位置。

字符串解碼後,它要經過參數擴展,命令替換,算術表達,和移除引號,根據shell選項 promptvars的值(見 Bash內建命令 章節)。





發佈了204 篇原創文章 · 獲贊 18 · 訪問量 60萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章