क्या ऐसा लिखने का कोई तरीका है find
ताकि यह टूट जाए अगर कोई -exec
एक फ़ाइल पर कार्रवाई विफल हो जाती है?
ईजी ( javac
आसानी से एक प्रोग्राम के रूप में उपयोग किया जाता है जो कुछ फाइलों पर और किसी अन्य कारण से 1 का एग्जिट कोड वापस कर सकता है):
$ 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
ऊपर दिए गए उदाहरण में, हालाँकि exec
फ़ाइल A.java
विफल रही (और 1 का निकास कोड लौटाया गया), find
कमांड आगे बढ़ी और B.java
साथ ही फ़ाइल संकलित की गई। वहाँ से बाहर तोड़ने का एक तरीका है find
या मैं for
इसके बजाय किसी न किसी रूप का उपयोग करना चाहिए ?
मेरे खोज का संस्करण:
$ find -version | head -1
find (GNU findutils) 4.4.2
$0
है?