Это сбой по той же причине, по которой смешивание логических AND и OR всегда завершается неудачей.
То, что вы здесь говорите, действительно (в псевдокоде):
If (
File Not Named '*.jpg' AND
Path Matches './bookshop/mediaimg' AND
Prone OR
Path Matches '*/CVS*' AND
Prune OR
Path Matches './files' AND
Prune OR
Path Matches './images/cms' AND
Prune OR
Path Matches './internal' AND
Prune OR
Path Matches './limesurvey171plus_build5638' AND
Prune OR
Path Matches './gallery2' AND
Prune OR
Print
)
Теперь print всегда возвращает true, и я думаю, что prune также делает это, так что вы видите, что ни одно из AND не имеет значения, если какое-либо OR совпадает. Тщательное применение скобок, вероятно, даст результаты, к которым вы стремитесь.