例如是否可以這樣做:ls -l *
列印所有目錄的內容。並添加一個例外,例如,test.cpp
為了打印除test.cpp
.
答案1
如果您已啟用,則可以使用 glob 來完成此操作extglob
。您可以透過以下方式啟用它:
shopt -s extglob
你可以這樣使用它:
ls -l !(test.cpp)
它也可以用於其他方式:
ls -l !(*.jpg) # list all files that don't have .jpg extensions
由於這是一個 shell glob,因此它也可以與其他命令一起使用。然而,一個副作用是它會導致明確列出所有子目錄,這意味著ls
也會列出它們。但是,這可以很容易地處理:
ls -ld !(test.cpp)
答案2
經典的(天真的?)方法是
ls -l * | grep -v test.cpp
然而,正如 Lamar 評論的那樣,GNUls
可以選擇忽略某些檔名
ls -l -I test.cpp *
注意ls -l *
列出目前目錄中的文件以及第一級子目錄中的文件。你的意思可能是ls -l
沒有*