Me gustaría buscar archivos que no coincidan con 2 -namecondiciones. Puedo hacerlo así:
find /media/d/ -type f -size +50M ! -name "*deb" ! -name "*vmdk"y esto producirá el resultado adecuado, pero ¿puedo unir estas 2 condiciones con OR de alguna manera?

-regexes menos portátil que-name.sí tu puedes:
Explicación de la especificación POSIX :
Tenga en cuenta que los paréntesis, tanto de apertura como de cierre, están precedidos por una barra diagonal inversa (
\) para evitar la evaluación por parte del shell.fuente
-execo cualquier otra acción en losfindresultados, recuerde poner entre paréntesis\( \)los criterios completos, de lo contrario-execse aplicará solo al último-orcriterio editado. Para trabajar en todos ellos,find \( <criterion> -o <criterion> \) -exec <command>Estuviste cerca de la solución:
Puede combinar los siguientes operadores lógicos en cualquier secuencia:
fuente
Puede usar expresiones regulares como en:
Backslash es el personaje de escape;
.coincide con un solo carácter y*sirve para coincidir con el carácter anterior cero o más veces, lo que.*significa que coincide con cero o más caracteres.fuente