plucky (3) glob.3tcl.gz

Provided by: manpages-zh_1.6.4.2-1_all bug

NAME

       glob - 返回匹配模式的檔名

總覽 SYNOPSIS

       glob ?switches? pattern ?pattern ...?
_________________________________________________________________

描述 DESCRIPTION

       這個命令用與  csh shell 類似的方式進行檔名的“萬用字元匹配”。它返回檔名匹配 pattern (模式)引數中的所有檔案
       的一個列表。

       如果給 glob 的初始引數以 - 開始,則它們將被作為選項來對待。當前支援下列選項開關:                          │

       -directory directory                                                                                      │
              在這個給定的 directory  (目錄)中開始查詢匹配給定模式的檔案。這允許查詢名字中包含萬用字元敏感字元的 │
              目錄而不需要顯式的引用這些字元。這個選項不能與-path 聯合使用。                                     │

       -join                                                                                                     │
              把透過剩餘的模式引數用目錄分隔符連線起來作為一個單一的模式來對待。

       -nocomplain
              允許返回一個空列表而不是返回一個錯誤;要是沒有這個開關的話,如果結果列表為空則返回一個錯誤。       │

       -path pathPrefix                                                                                          │
              查詢有給定的  pathPrefix  (路徑字首)的檔案,名字中餘下的部分匹配給定模式。這個選項允許查詢與一個給 │
              定檔案有類似的名字的檔案,包括名字中包含萬用字元敏感的字元的情況。這個選項不能與-directory  聯合使 │
              用。                                                                                               │

       -types typeList                                                                                           │
              只列出匹配 typeList (型別列表)的檔案或目錄,在這個列表中的元素有兩種形式。第一種形式類似 Unix find │
              命令的 -type 選項: b (塊特殊檔案 block special file), c (字元特殊檔案 character special  file),  d │
              (目錄 directory), f (單純檔案 plain file), l (符號連線 symbolic link), p (命名管道 named pipe), or │
              s (套介面 socket), 在這個列表中可以指定多個型別。Glob 返回至少匹配一個型別的所有檔案。             │

              對於第二種形式指定的型別,所有給出的型別都必須匹配。它們是作為檔案許可權的 rwx和作為特殊許可權 │
              的例項的  readonlyhidden。在 Macintosh 上,還支援 MacOS 型別和建立者,假定任何四個字元長的專案都 │
              是一個 MacOS  型別(例如 TEXT)。有{macintosh type XXXX}{macintosh creator XXXX}  形式的專案將分 │
              別的匹配型別或建立者。不可識別的型別,或多個 MacOS 型別/建立者指定將導致錯誤。                     │

              以混合兩種型別,所以 -types {d f r w} 將找到有讀寫許可權的正規檔案目錄。下列命令等價:          │
                            glob -type d *glob */                                                                              │
              但第一種情況不返回尾部的 ``/'' 並且更加不依賴平臺。                                                │

       --     標誌著選項的結束。此後的引數即使以 - 開始仍將被作為pattern  對待。

       pattern  引數可以包含任意下列特殊字元:

       ?         匹配任何單一字元。

       *         匹配零個或多個字元的任何序列。

       [chars]   匹配在  chars 中的任何單一字元。如果 chars 包含 a-b  形式的一個序列則匹配在 ab  之間(包括它
                 們在內)的任何字元。

       \x        匹配字元 x{a,b,...} 匹配字串 ab 等中的任何一個。

       與 csh  一樣,  在一個檔案的名字的開始處或緊隨“/”之後的那個“.”必須被顯式的(explicit)匹配或與一個  {}   構
       造(construct)相匹配。額外的,所有“/”字元必須顯式的匹配。

       如果在一個  pattern中的第一個是“~”,則它參照一個使用者的主目錄,這個使用者的名字緊隨在“~”之後。如果 “~”的
       後面緊隨著一個“/”,則使用 HOME 環境變數的值。

       glob與 csh  globbing  在兩個方面有區別。首先,它不排序它的結果列表(如果你想排序的話使用  lsort  命令)。其
       次,glob  只返回實際存在的檔案的名字;在 csh  中除非一個模式包含一個 ?、*、或 [] 構造,否則不檢查檔案是否
       存在。

移植要點 PORTABILITY ISSUES

       不象其他  Tcl  命令那樣接受網路和本地式樣的兩種名字(關於如何指定本地和網路名字的詳情參見   filename手冊條
       目),而 glob  命令只接受本地名字。

       Windows
              對於  Windows  UNC  名字,路徑組成部分中的伺服器名和共享名不能包含?、*、或  [] 構造。在 Windows NT
              上,如果 pattern  有 ``~username@domain'' 的形式,則它參照一個使用者的主目錄,這個使用者的帳號資訊
              駐留在指定 NT  域控制器上。否則,從本地計算機獲取使用者帳號資訊。在 Windows 95  和 98 上,glob  接
              受象“.../” 和 “..../”這樣的模式,用於連續的更上層的父目錄。

       Macintosh
              在使用了選項 -dir-join-path 的時候,glob 假定給整個模式的目錄分隔符是標準的“:”。在不使用這些
              選項的時候,glob  檢查每個模式引數,除非這個模式包含一個“:”,否則使用“/”。

參見 SEE ALSO

       file(n)

關鍵字 KEYWORDS

       exist, file, glob, pattern

[中文版維護人]

       寒蟬退士

[中文版最新更新]

       2001/09/03

《中國 Linux 論壇 man 手冊頁翻譯計劃》:

       http://cmpp.linuxforum.net

       本頁面中文版由中文 man 手冊頁計劃提供。
       中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh