我想在目录中找到所有php和js文件,并排除其中一个子目录。 我将来可能不得不排除多个子目录。
我试过了:
find /home/jul/here -type f -iname "*.php" -o -iname "*.js" ! -path "/home/jul/here/exclude/*"
问题是它只从/ home / jul / here / exclude中排除了js文件。
有没有办法放一些括号?
找到(某些东西或其他东西)并排除这个
答案 0 :(得分:0)
find /home/jul/here -type f \( -iname "*.php" -o -iname "*.js" \) ! -path "/home/jul/here/exclude/*"
答案 1 :(得分:0)
您需要在每组文件后添加排除模式。所以这样的事情应该有效:
find /home/jul/here -type f -iname "*.php" ! -path "/home/jul/here/exclude/*" -o -iname "*.js" ! -path "/home/jul/here/exclude/*"
或者更好的变量:
EXCLUDE=/home/jul/here/exclude
find /home/jul/here -type f -iname "*.php" ! -path "$EXCLUDE/*" -o -iname "*.js" ! -path "$EXCLUDE/*"