搜索起来出奇的困难,因为所有结果都是在搜索中排除目录。
我只是想从输出中排除目录。例如:
>find ./ -size +0
./directory
./directory/afileinthere.txt
我想要这个输出:
>find ./ -size +0
./directory/afileinthere.txt
我怎样才能实现这一点?
答案1
另一个答案指向-type
操作数,但如何排除目录。你需要!
,它是这样的:
-type d
仅匹配目录。! -type d
匹配除目录之外的所有内容。
所以你的命令应该是:
find . ! -type d -size +0
答案2
您应该看看手册中的 find 的 -type 选项:
-type c
File is of type c:
b block (buffered) special
c character (unbuffered) special
d directory
p named pipe (FIFO)
f regular file
l symbolic link; this is never true if the -L option or the -fol‐
low option is in effect, unless the symbolic link is broken.
If you want to search for symbolic links when -L is in effect,
use -xtype.
s socket
D door (Solaris)