मैं विश्व लेखन योग्य फ़ाइलों और फ़ोल्डरों को कैसे ढूंढ सकता हूं और चिपचिपा बिट सेट कर सकता हूं?


13

मैं निम्नलिखित करना चाहता हूं:

  1. /जड़ से सभी विश्व लिखने योग्य फ़ाइलों और फ़ोल्डरों को खोजने की आवश्यकता है ।
  2. यदि पाया जाता है, तो मुझे यह जांचने की आवश्यकता है कि चिपचिपा बिट सेट है या नहीं।
  3. यदि चिपचिपा बिट सेट नहीं है, तो इसे सेट करें।

क्या हम इस प्रकार की समस्या के लिए कमांड लाइन समाधान के साथ आ सकते हैं?

जवाबों:


13

आप इस का उपयोग कर सकते findहै -perm -modeप्रारूप। से man find:

-स्पर्म -मोड

फ़ाइल के लिए सभी अनुमति बिट्स मोड सेट हैं। प्रतीकात्मक मोड इस रूप में स्वीकार किए जाते हैं, और यह आमतौर पर ऐसा तरीका है जिसमें वे उनका उपयोग करना चाहते हैं। u',यदि आप एक प्रतीकात्मक मोड का उपयोग करते हैं तो आपको g 'या `o' निर्दिष्ट करना होगा । कुछ उदाहरणों के लिए परीक्षा अनुभाग देखें।

इसलिए, वे सभी फाइलें ढूंढने के लिए जो दुनिया के लिए उपयुक्त हैं, चाहे उनके पास अन्य अनुमतियाँ हों, आप कर सकते हैं:

find / -perm -o+w 

चिपचिपा सा सेट करने के लिए, उपयोग करें -exec:

find . -perm -o+w -exec chmod +t {} + 

2
NB: find / -not -type l -perm -o+wयदि आप आउटपुट लिंक को प्रतीकात्मक लिंक के नाम के साथ भी शामिल नहीं करना चाहते हैं तो उपयोग करें ।
chb

2

इस कमांड को सभी एक कमांड में राइटिंग डायरेक्टरी मिलनी चाहिए, मैं खुद को अक्सर इसका इस्तेमाल करता हूं। यह इष्टतम आदेश! ;) आशा है कि यह आपको अच्छी तरह से कार्य करता है:

find / -type d \( -perm -g+w -or -perm -o+w \) -exec ls -adl {} \;
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.