Rm के पीछे क्या विचार है जो डिफ़ॉल्ट रूप से गैर-लेखन योग्य फ़ाइल को नहीं हटाता है?


13

Rm के पीछे क्या विचार है जो डिफ़ॉल्ट रूप से गैर-लेखन योग्य फ़ाइल को नहीं हटाता है? हर बार जब आप ऐसी फ़ाइल को निकालना चाहते हैं जो वर्तमान उपयोगकर्ता के लिए गैर-लेखन योग्य फ़ाइल है, लेकिन आपके पास निर्देशिका पर लिखित अनुमति है, तो यह चेतावनी प्राप्त करें और आपको विलोपन की पुष्टि करने के लिए `y 'को रखने की आवश्यकता है:

rm: remove write-protected regular file 

मुझे आश्चर्य है कि ऐसे विशेष तरीके से गैर-योग्य फ़ाइलों का इलाज क्यों किया जाता है? एक बात जो मेरे दिमाग में आती है, वह यह है कि ऐसी फाइलें आमतौर पर यूजर कॉन्फिग फाइल होती हैं, जिसमें यूजर सीक्रेट डेटा जैसे एन्क्रिप्टेड पासवर्ड होता है ताकि rm उन्हें डिलीट करने से पहले चेतावनी दे सकें। अब, असली कारण क्या है?

जवाबों:


16

ऐसा इसलिए है क्योंकि इस मामले में UNIX का व्यवहार थोड़ा प्रति-सहज है। कई लोग काफी आश्चर्यचकित होते हैं जब वे एक फ़ाइल को केवल पढ़ने के लिए चिह्नित करते हैं और कोई इसे हटाने में सक्षम होता है। किसी फ़ाइल को हटाने के लिए आपको केवल निर्देशिका में लिखने की अनुमति चाहिए। rmआपसे एक शिष्टाचार के रूप में पूछ रहा है, यदि आप उम्मीद कर रहे थे कि यह केवल पढ़ा जा रहा है, तो यह रक्षा करेगा।

-f(बल) का उपयोग करते हुए यह आपको बिना रुके यह कर देगा। लेकिन ध्यान से उपयोग करें।


"rm -rf *" टाइप करते समय सावधान रहें, सोचें।
ChuckCottrill

4
मेरा एक दोस्त "मेल रियल फास्ट पढ़ें" के रूप में संदर्भित करता है। :)
कर्टम

0

मुझे लगता है कि आप इसके बारे में सही कह रहे हैं क्योंकि यह लिखा जाना तय नहीं है। यदि आप गैर-लेखन फ़ाइल को हटा रहे हैं, तो वास्तव में, आप उस फ़ाइल पर लिख रहे हैं। यदि आप नहीं चाहते कि आपको संकेत दिया जाए कि आप हमेशा एक उपनाम बना सकते हैं कि rm वास्तव में rm -f है।


मुझे नहीं लगता कि मुझे आपका जवाब सही से मिला। मुझे आश्चर्य है कि आरएम पहली बार ऐसी चेतावनी क्यों जारी करता है, केवल पढ़ने योग्य फ़ाइलों को अलग-अलग तरीके से लिखा जाता है। मुझे पता है कि जब यह चेतावनी दिखाई गई है, मुझे आश्चर्य है कि क्यों।
user1042840

क्योंकि यदि आप कुछ पढ़ा जाने के लिए सेट करते हैं तो यह नहीं माना जाता है कि इसे बदल दिया जाएगा। जिसमें हटाया जाना भी शामिल है। यदि आप रूट हैं और इसे रीड को हटाने के लिए कहें तो वैसे भी फाइल करें जो यह पुष्टि करना चाहता है कि आप गलती नहीं कर रहे हैं। यह आपकी पसंद पर पुनर्विचार करने का कारण बनता है।
Jeight

1
@Jeight यह वास्तव में सही नहीं है। हटाते समय आप फ़ाइल को नहीं लिख रहे हैं । आप युक्त निर्देशिका को लिख रहे हैं।
कर्टम

@ कर्टम आप सही हैं। यह एक टाइपो था, लेकिन अंतर्निहित तर्क समान है।
ज्येष्ठ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.