最简单的方式,cd到目标目录下,使用
% glob *
显示目标文件加里所有的文件。使用
% glob *.tcl
显示目标文件夹里所有的.tcl文件。
如果搜索不到文件就会返回一个错误,可以使用-nocomplain标志位来使没有文件时返回空,直接使用
% glob test
no files matched glob pattern "test"
报回一个错误,而使用
% glob -nocomplain test
就返回空。
如果目前不在目标文件夹,而知道目标文件夹的绝对路径,可以使用
% glob -directory d:/tcl/ *
显示目标文件夹d:/tcl/里面的文件信息。文件信息的显示方式是显示文件的完整的路径名。比如d:/tcl/lib,如果只想显示lib文件名,可以使用
% glob -directory d:/tcl/ -tails *
-tails表示只显示文件名,可以与-directory和-path一起使用。
如果知道文件的前半部分,需要找后半部分
% glob -path d:/tcl/li *
返回d:/tcl/lib d:/tcl/licenses d:/tcl/license-at8.5-thread.terms等三个文件,如果需要只返回文件名,使用
% glob -path d:/tcl/li -tails *
只返回文件名lib licenses license-at8.5-thread.terms。
可以限定返回的文件类型,使用-type来限定,比如只返回文件夹文件
% glob -directory d:/tcl/ -type d *
只返回文件夹文件,使用-type f只返回普通文件等。