是否可以使用locate命令只查找目录?换句话说,我想搜索一个目录,并将任何不是目录的结果(例如文件或符号链接)排除到文件中.
虽然没有必要,但我希望解决方案还能将符号链接返回到其他目录(但同样不是文件).
最后,我想排除foo中的目录,但有一个例外.如果foo的子目录还包含一个名称包含foo的子目录,我希望它也会被返回.
如果存在以下文件和目录…
/home/foo/ /home/foo/foo.txt /home/foo/someotherdir/ /home/foo/someotherdir/food/ /food/ /var/www/foo -> /home/foo/ /var/www/food -> /home/food/index.html
输出只包含……
/home/foo/ /home/foo/someotherdir/food/ /food/ /var/www/foo -> /home/foo/
提前致谢.
编辑:谢谢你的回复.我非常谨慎地为locate命令命名,而不是找到.
解决方法
也许一点点狡猾,但它来了:
locate foo | xargs file -NF '|' |grep '| directory' | sed 's/| directory//g'