我有个命令
$ find -path './nas/cdn/catalog/[^.]*' -prune -type d
./nas/cdn/catalog/swatches
./nas/cdn/catalog/product_shots
./nas/cdn/catalog/full_length
./nas/cdn/catalog/cropped
./nas/cdn/catalog/drawings但这并不会返回所有目录。
$ find -path './nas/cdn/catalog/*' -type d
./nas/cdn/catalog/swatches
./nas/cdn/catalog/swatches/.AppleDouble
./nas/cdn/catalog/.AppleDouble
./nas/cdn/catalog/product_shots
./nas/cdn/catalog/product_shots/.AppleDouble
./nas/cdn/catalog/product_shots/high_res
./nas/cdn/catalog/product_shots/high_res/.AppleDouble
./nas/cdn/catalog/product_shots/high_res/back
./nas/cdn/catalog/product_shots/high_res/back/.AppleDouble
./nas/cdn/catalog/product_shots/high_res/front
./nas/cdn/catalog/product_shots/high_res/front/.AppleDouble
./nas/cdn/catalog/product_shots/low_res
./nas/cdn/catalog/product_shots/low_res/.AppleDouble
./nas/cdn/catalog/product_shots/low_res/back
./nas/cdn/catalog/product_shots/low_res/back/.AppleDouble
./nas/cdn/catalog/product_shots/low_res/front
./nas/cdn/catalog/product_shots/low_res/front/.AppleDouble
./nas/cdn/catalog/product_shots/thumbs
./nas/cdn/catalog/product_shots/thumbs/.AppleDouble
./nas/cdn/catalog/full_length
./nas/cdn/catalog/full_length/.AppleDouble
./nas/cdn/catalog/full_length/high_res
./nas/cdn/catalog/full_length/low_res
./nas/cdn/catalog/cropped
./nas/cdn/catalog/cropped/.AppleDouble
./nas/cdn/catalog/drawings
./nas/cdn/catalog/drawings/.AppleDouble基本上,我希望从find命令中删除所有.AppleDouble和其他.hidden目录。
发布于 2014-12-12 14:55:42
您可以使用-regex选项:
find . -type d -regex '\./nas/cdn/catalog/[^.]*'[^.]*模式将确保不选择以DOT开头的任何条目。
https://stackoverflow.com/questions/27445987
复制相似问题