我想按名称查找一些文件夹,然后使用“ls”列出它们的信息,这是我使用“find”所做的,
find ./ -mindepth 1 -maxdepth 3 -type d -name logs
我得到的是:
./RECHMN32Z/US/logs
./RECHMN32Z/UM/logs
./RECHMP3BL/US/logs
./RECHMP3BL/UM/logs
./RECHMAS86/UM/logs
./RECHMAS86/US/logs
然后我添加“xargs ls -l”,然后它会返回上面返回的这些文件夹下所有文件的信息,如果我只想列出这些文件夹的信息,怎么办?
这不是 find 或 xargs 的错,而是 ls 的错。当给定的目录名称 ls 显示其内容时。您可以使用-d
它只显示目录本身。
find 有一个-ls
使用与ls -dils
. 无需调用外部命令。
find ./ -mindepth 1 -maxdepth 3 -type d -name logs -ls
或者用于ls -ld
列出目录而不是它们的内容。-exec cmd {} +
是一个更简单的替代品xargs
。不需要管道。
find ./ -mindepth 1 -maxdepth 3 -type d -name logs -exec ls -ld {} +
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句