This function doesn't print out anything;
skyrimse_testroot() {
local directory="$1"
find "$directory" \
\( -type f -ipath "${directory}/data/scripts/*.pex" \) -o \
\( -type d -ipath "${directory}/data/meshes" \) \
-print -quit
}
But this one does (I removed the second test group);
skyrimse_testroot() {
local directory="$1"
find "$directory" \
\( -type f -ipath "${directory}/data/scripts/*.pex" \) \
-print -quit
}
$1
is an absolute path, so is the starting point and the -ipath
arguments.
Based on my humble knowledge of boolean logic, chaining more OR clauses to a positive expression should not make that expression evaluate negatively. Either find
is broken or I got something wrong, and I suspect one option more than the former.