2012-08-22 30 views
0

我需要列出目錄上的文件。但只有真正的文件,而不是文件夾。 只是無法找到一種方法來測試,如果該文件是一個文件夾或目錄....如何列出目錄shell腳本上的文件

有人可以提供一個腳本嗎?

感謝

回答

2

如何使用find

要找到正規的文件在當前目錄和輸出排序列表:

$ find -maxdepth 1 -type f | sort 

要找到什麼是不是目錄(注:有比Unix的只是普通的文件和目錄的更多的東西類系統):

$ find -maxdepth 1 ! -type d | sort 
+0

工作正常.....謝謝 –

0

bash外殼test -f $file會告訴你,如果$文件是文件:

if test -f $file; then echo "File"; fi 
0

您可以使用ls -l | grep ^d -v來實現你想要的。我在Redhat 9.0中測試過,它只列出真正的文件,包括隱藏文件。

如果你想獲得目錄上的文件夾列表。但只有文件夾,而不是真正的文件。您可以使用ls -l | grep ^d

+0

不,請不要。有更少的脆弱方法。 –

相關問題