glob(3tcl) | Tcl Built-In Commands | glob(3tcl) |
glob - 返回匹配模式的檔名
glob ?switches? pattern ?pattern ...?
這個命令用與 csh shell 類似的方式進行檔名的“萬用字元匹配”。它返回檔名匹配 pattern (模式)引數中的所有檔案的一個列表。
如果給 glob 的初始引數以 - 開始,則它們將被作為選項來對待。當前支援下列選項開關:
對於第二種形式指定的型別,所有給出的型別都必須匹配。它們是作為檔案許可權的 r、w、x和作為特殊許可權的例項的 readonly、hidden。在 Macintosh 上,還支援 MacOS 型別和建立者,假定任何四個字元長的專案都是一個 MacOS 型別(例如 TEXT)。有{macintosh type XXXX} 或 {macintosh creator XXXX} 形式的專案將分別的匹配型別或建立者。不可識別的型別,或多個 MacOS 型別/建立者指定將導致錯誤。
以混合兩種型別,所以 -types {d f r w} 將找到有讀和寫許可權的正規檔案或目錄。下列命令等價:
glob -type d * glob */
pattern 引數可以包含任意下列特殊字元:
與 csh 一樣, 在一個檔案的名字的開始處或緊隨“/”之後的那個“.”必須被顯式的(explicit)匹配或與一個 {} 構造(construct)相匹配。額外的,所有“/”字元必須顯式的匹配。
如果在一個 pattern中的第一個是“~”,則它參照一個使用者的主目錄,這個使用者的名字緊隨在“~”之後。如果 “~”的後面緊隨著一個“/”,則使用 HOME 環境變數的值。
glob與 csh globbing 在兩個方面有區別。首先,它不排序它的結果列表(如果你想排序的話使用 lsort 命令)。其次,glob 只返回實際存在的檔案的名字;在 csh 中除非一個模式包含一個 ?、*、或 [] 構造,否則不檢查檔案是否存在。
不象其他 Tcl 命令那樣接受網路和本地式樣的兩種名字(關於如何指定本地和網路名字的詳情參見 filename手冊條目),而 glob 命令只接受本地名字。
file(n)
exist, file, glob, pattern
寒蟬退士
2001/09/03
http://cmpp.linuxforum.net
本頁面中文版由中文
man 手冊頁計劃提供。
中文 man
手冊頁計劃:https://github.com/man-pages-zh/manpages-zh
8.3 | Tcl |