C'è un modo per scrivere un find
così che si interrompe se una delle -exec
operazioni fallisce su un file?
Ad esempio ( javac
è convenientemente usato come programma che può restituire un codice di uscita 1 su alcuni file e per nessun altro motivo):
$ echo "public classXX A{}" >> A.java
$ echo "public class B{}" >> B.java
$ find . -iname \*.java -exec javac {} \;
./A.java:1: error: class, interface, or enum expected
public classXX A{}
^
1 error
Nell'esempio sopra, sebbene il exec
file sul A.java
non sia riuscito (e abbia restituito un codice di uscita pari a 1), il find
comando è proseguito e ha anche compilato il file B.java
. C'è un modo per uscire find
o dovrei usare una qualche forma di for
invece?
La mia versione di find:
$ find -version | head -1
find (GNU findutils) 4.4.2
$0
fa?