/ / लिनक्स खोज -exec अनुमति से इनकार किया - लिनक्स, शेल, कमांड, रेडहैट, अनुमति-अस्वीकृत

लिनक्स ढूंढें- अधिकतम अनुमति अस्वीकार - लिनक्स, खोल, कमांड, redhat, अनुमति से वंचित

मैंने फ़ाइलों के माध्यम से पुनरावृत्ति करने वाली एक शेल स्क्रिप्ट लिखी और उनकी सामग्री को ऑर्डर किया और नए ऑर्डर को फ़ाइल में वापस सहेजा।

#!/bin/sh

for i in "$@"; do
sort $i -k2 -o $i
done

सॉर्ट की जाने वाली फ़ाइलों को इसके साथ चुना जाता है find ऐसा आदेश:

find . -regex "<myregex>" -exec ./mysort.sh {} +

मैंने स्क्रिप्ट लिखी और एक मशीन को एक विशिष्ट उपयोगकर्ता के रूप में आज़माया और फिर रूट विशेषाधिकारों का उपयोग करके इसे दूसरी मशीन पर कॉपी कर दिया। तो अब फाइल है chown root:root के रूप में सभी फ़ाइलों के माध्यम से खोज करने के लिए मैं भटकना है।

इसलिए अब छांटे जाने वाली फाइलें mysort.sh के समान फ़ोल्डर में स्थित हैं और जब मैं खोज को निष्पादित करने की कोशिश करता हूं, तो मैं मिलता

find: "./mysort.sh": Permission denied

मैंने स्क्रिप्ट को एक सबफ़ोल्डर में ले जाने और कमांड को निष्पादित करने का प्रयास किया -exec ./folder/mysort.sh या इसे एक उच्च स्तरीय फ़ोल्डर में ले जाना और इसके साथ क्रियान्वित करना -exec ../mysort.sh। मुझे हमेशा अनुमति से वंचित त्रुटियों के विभिन्न रूप मिलते हैं।

उत्तर:

जवाब के लिए 2 № 1

जाँच करें कि क्या फाइलसिस्टम आरोहित था noexec झंडा।

लेकिन आप अपनी स्क्रिप्ट को फिर भी चला सकते हैं bash:

bash /path/to/mysort.sh