एक निर्देशिका निष्पादन योग्य के भीतर सभी .sh फ़ाइलों को बनाने के लिए एक पुनरावर्ती chmod प्रदर्शन करने के लिए आदेश?


13

एक निर्देशिका में सभी .sh फ़ाइलों पर एक पुनरावर्ती chmod प्रदर्शन करने के लिए उन्हें निष्पादन योग्य बनाने की कोशिश कर रहा है


में देखें findऔर हो सकता है xargs
fkraiem

जवाबों:


25

इसे संभव बनाने के लिए आप findकमांड का उपयोग कर सकते हैं और .shएक्सटेंशन वाली सभी फाइलों को खोज सकते हैं और फिर chmodप्रत्येक एक पर कमांड को चला सकते हैं:

find /directory/of/interest/ -type f -iname "*.sh" -exec chmod +x {} \;

जानकारी:

  1. -type f: सामान्य फाइलें केवल (निर्देशिकाओं को छोड़ दें, सहानुभूति, नामित पाइप और सॉकेट, और विशेष फाइलें / देव में पाई गई)
  2. -iname: नाम में अनदेखी का मामला
  3. "*.sh": ग्लोबिंग, findकमांड को ".sh" एक्सटेंशन वाली फाइलों की खोज करने के लिए कह रहा है
  4. -exec chmod +x {}: यह प्रत्येक मिली फ़ाइल पर findकमांड को पूरा करने के लिए कमांड को बताता है chmod। प्रत्येक निष्पादन योग्य बनाना
  5. \;: आज्ञा का संकेत देना
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.