rmdir (निकालें निर्देशिका) आदेश खाली निर्देशिका / फ़ोल्डर में linux को हटाने के लिए
विषयसूची:
- शुरू करने से पहले
rmdir
साथ निर्देशिकाएँ निकालनाrm
साथ निर्देशिकाएँ निकालनाfind
साथ निर्देशिकाएँfind
- सभी खाली निर्देशिकाओं को हटाना
- / बिन / आरएम: तर्क सूची बहुत लंबी है
- निष्कर्ष
लिनक्स सिस्टम में निर्देशिकाओं को हटाने के कई अलग-अलग तरीके हैं। यदि आप एक डेस्कटॉप फ़ाइल प्रबंधक जैसे कि ग्नोम की फाइलें या केडीई की डॉल्फिन का उपयोग करते हैं तो आप प्रबंधक के ग्राफिकल यूजर इंटरफेस का उपयोग करके फ़ाइलों और निर्देशिकाओं को हटा सकते हैं। लेकिन, यदि आप एक हेडलेस सर्वर पर काम कर रहे हैं या एक साथ कई निर्देशिकाओं को निकालना चाहते हैं तो कमांड लाइन से निर्देशिकाओं (फ़ोल्डरों) को हटाना सबसे अच्छा विकल्प है।
, हम बताएंगे कि
rmdir
,
rm
और कमांड्स का उपयोग करके लिनक्स में निर्देशिकाओं को कैसे हटाएं।
शुरू करने से पहले
जब आप अपने डेस्कटॉप फ़ाइल प्रबंधक का उपयोग करके एक निर्देशिका निकालते हैं, तो निर्देशिका वास्तव में ट्रैश में चली जाती है और आसानी से पुनर्प्राप्त की जा सकती है।
कमांड लाइन से फ़ाइलों या निर्देशिकाओं को हटाते समय अतिरिक्त सावधानी बरतें, क्योंकि एक बार निर्देशिका को हटाए जाने के बाद कमांड का उपयोग करके समझाया जाता है कि इसे पूरी तरह से पुनर्प्राप्त नहीं किया जा सकता है।
अधिकांश लिनक्स फाइल सिस्टम पर, निर्देशिका को हटाने के लिए निर्देशिका और उसकी सामग्री पर लिखने की अनुमति की आवश्यकता होती है। अन्यथा आपको "ऑपरेशन की अनुमति नहीं है" त्रुटि मिलेगी।
उनमें एक स्थान के साथ निर्देशिका नाम एक बैकस्लैश (
/
) के साथ बच जाना चाहिए।
rmdir
साथ निर्देशिकाएँ निकालना
rmdir
खाली निर्देशिका को हटाने के लिए एक कमांड-लाइन उपयोगिता है। यह तब उपयोगी होता है जब आप किसी निर्देशिका को केवल तभी हटाना चाहते हैं जब वह खाली हो, बिना यह जाँचे कि निर्देशिका खाली है या नहीं।
rmdir
साथ एक निर्देशिका को हटाने के लिए, जिस निर्देशिका को आप हटाना चाहते हैं उसका नाम टाइप करें। उदाहरण के लिए,
dir1
नामक निर्देशिका को हटाने के लिए आप टाइप करेंगे:
rmdir dir1
यदि निर्देशिका खाली नहीं है, तो आपको निम्नलिखित त्रुटि मिलेगी:
rmdir: failed to remove 'dir1': No such file or directory
इस मामले में, आपको इसे हटाने से पहले
rm
कमांड का उपयोग करना होगा या निर्देशिका सामग्री को मैन्युअल रूप से निकालना होगा।
rm
साथ निर्देशिकाएँ निकालना
rm
फ़ाइलों और निर्देशिकाओं को हटाने के लिए एक कमांड-लाइन उपयोगिता है।
rmdir
के विपरीत
rm
कमांड खाली और गैर-रिक्त दोनों डायरेक्टरी को हटा सकता है।
डिफ़ॉल्ट रूप से, जब बिना किसी विकल्प के
rm
उपयोग किया जाता है तो वह निर्देशिकाओं को नहीं हटाता है। खाली निर्देशिका को हटाने के लिए,
-d
(
--dir
) विकल्प का उपयोग करें और गैर-रिक्त निर्देशिका को हटाने के लिए और इसकी सभी सामग्री
-r
(
--recursive
या
-R
) विकल्प का उपयोग करें।
उदाहरण के लिए
dir1
नाम की एक निर्देशिका को हटाने के लिए जिसकी सभी सामग्री आप टाइप करेंगे:
rm -r dir1
यदि कोई निर्देशिका या निर्देशिका के भीतर कोई फ़ाइल राइट-प्रोटेक्टेड है, तो आपको विलोपन की पुष्टि करने के लिए प्रेरित किया जाएगा। संकेत दिए बिना किसी निर्देशिका को हटाने के लिए
-f
विकल्प का उपयोग करें:
rm -rf dir1
एक साथ कई निर्देशिकाओं को हटाने के लिए,
rm
कमांड का उपयोग करें, जिसके द्वारा निर्देशिका के नामों को अंतरिक्ष से अलग किया जाता है। नीचे दी गई कमांड प्रत्येक सूचीबद्ध निर्देशिका और उनकी सामग्री को हटा देगी:
rm -r dir1 dir2 dir3
-i
विकल्प आपको प्रत्येक उपनिर्देशिका और फ़ाइल को हटाने की पुष्टि करने के लिए
rm
को बताता है। यदि निर्देशिका में बहुत सारी फाइलें हैं, तो यह थोड़ा कष्टप्रद हो सकता है, इसलिए आप
-I
विकल्प का उपयोग करने पर विचार कर सकते हैं जो हटाने के साथ आगे बढ़ने से पहले केवल एक बार आपको संकेत देगा।
rm -rI dir1
डायरेक्ट्री टाइप
y
और हिट
Enter
को हटाने के लिए।
rm: remove 1 argument recursively? y
आप कई निर्देशिकाओं के मिलान और हटाने के लिए नियमित विस्तारक का भी उपयोग कर सकते हैं। उदाहरण के लिए,
_bak
साथ समाप्त होने वाली वर्तमान निर्देशिका में सभी प्रथम स्तर की निर्देशिकाओं को निकालने के लिए, आप निम्नलिखित कमांड का उपयोग करेंगे:
rm -r *_bak
निर्देशिकाओं को हटाते समय नियमित विस्तार का उपयोग करना जोखिम भरा हो सकता है। यह अनुशंसा की जाती है कि पहले निर्देशिकाओं को
ls
कमांड के साथ सूचीबद्ध करें ताकि आप देख सकें कि
rm
कमांड चलाने से पहले कौन-सी निर्देशिकाएँ हटा दी जाएँगी।
find
साथ निर्देशिकाएँ
find
find
एक कमांड-लाइन उपयोगिता है जो आपको दी गई अभिव्यक्ति के आधार पर फ़ाइलों और निर्देशिकाओं की खोज करने और प्रत्येक मिलान की गई फ़ाइल या निर्देशिका पर एक क्रिया करने की अनुमति देती है।
सबसे आम परिदृश्य पैटर्न के आधार पर निर्देशिकाओं को हटाने के लिए
find
कमांड का उपयोग करना है। उदाहरण के लिए, आपके द्वारा चलाए जा रहे वर्तमान कार्य निर्देशिका में
_cache
साथ समाप्त होने वाली सभी निर्देशिकाओं को हटाने के लिए:
find. -type d -name '*_cache' -exec rm -r {} +
चलो ऊपर दिए गए आदेश का विश्लेषण करें:
-
/dir
- वर्तमान कार्यशील निर्देशिका (.
) में पुनरावर्ती खोज करें।-type d
- निर्देशिकाओं के लिए खोज को प्रतिबंधित करता है।-name '*_cache'
- केवल निर्देशिकाएं जो_cache
-exec
साथ समाप्त होती हैं - वैकल्पिक तर्कों के साथ एक बाहरी कमांड निष्पादित करता है, इस मामले मेंrm -r
।{} +
-rm
कमांड के अंत में मिली फाइलों को जोड़ देता है।
सभी खाली निर्देशिकाओं को हटाना
एक निर्देशिका ट्री में सभी खाली निर्देशिकाओं को हटाने के लिए जिसका आप उपयोग करेंगे:
find /dir -type d -empty -delete
उपयोग किए गए विकल्पों के लिए यहां एक स्पष्टीकरण दिया गया है:
-
/dir
-/dir
निर्देशिका में पुनरावर्ती खोज।-type d
- निर्देशिकाओं के लिए खोज को प्रतिबंधित करता है।-empty
- केवल खाली निर्देशिकाओं के लिए खोज को प्रतिबंधित करता है।-delete
- सबट्री में सभी खाली निर्देशिकाओं को हटाता है।-delete
केवल खाली निर्देशिकाओं को हटा सकता है।
अत्यधिक सावधानी के साथ
-delete
विकल्प का उपयोग करें। खोज कमांड लाइन का मूल्यांकन एक अभिव्यक्ति के रूप में किया जाता है और यदि आप
-delete
विकल्प पहले जोड़ते हैं, तो कमांड आपके द्वारा निर्दिष्ट शुरुआती बिंदुओं के नीचे सब कुछ हटा देगा। हमेशा-आखिरी विकल्प के रूप में
-delete
उपयोग करें और हटाने से पहले
-delete
विकल्प के बिना पहले कमांड का परीक्षण करें।
/ बिन / आरएम: तर्क सूची बहुत लंबी है
यह त्रुटि संदेश तब दिखाई देता है जब आप
rm
कमांड का उपयोग एक निर्देशिका को हटाने के लिए करते हैं जिसमें बड़ी संख्या में फाइलें होती हैं। ऐसा इसलिए होता है क्योंकि कमांड लाइन तर्क के आकार पर सिस्टम की सीमा से बड़ी फ़ाइलों की संख्या होती है।
इस समस्या के कई अलग-अलग समाधान हैं। उदाहरण के लिए, आप एक-एक करके उप-निर्देशिकाओं को हटाने के लिए निर्देशिका और मैन्युअल रूप से या लूप का उपयोग कर सकते हैं।
सबसे आसान उपाय यह है कि डायरेक्टरी के भीतर मौजूद सभी फाइलों को
find
कमांड से डिलीट करें और फिर डायरेक्ट्री को डिलीट करें:
find /dir -type f -delete && rm -r /dir
निष्कर्ष
rm
साथ और आप विभिन्न मानदंडों के आधार पर निर्देशिकाओं को तेजी से और कुशल तरीके से हटा सकते हैं।
निर्देशिकाओं को हटाना एक सरल और आसान प्रक्रिया है लेकिन आपको महत्वपूर्ण डेटा को नहीं हटाने के लिए सतर्क रहना चाहिए।
rm rddir टर्मिनल खोजेंलिनक्स में Ls कमांड (सूची फ़ाइलें और निर्देशिका)
Ls कमांड बेसिक कमांड में से एक है जिसे किसी भी लिनक्स यूजर को पता होना चाहिए। इसका उपयोग फ़ाइल और निर्देशिकाओं के बारे में जानकारी को फ़ाइल सिस्टम में सूचीबद्ध करने के लिए किया जाता है।
लिनक्स में प्रतीकात्मक लिंक कैसे हटाएं (हटाएं)
एक प्रतीकात्मक लिंक, जिसे सिमलिंक के रूप में भी जाना जाता है, एक विशेष प्रकार की फ़ाइल है जो किसी अन्य फ़ाइल या निर्देशिका की ओर इशारा करती है। इस गाइड में, हम आपको दिखाएंगे कि लिनक्स / UNIX सिस्टम में प्रतीकात्मक लिंक कैसे हटाएं (हटाएं)।
लिनक्स में सीडी कमांड (परिवर्तन निर्देशिका)
लिनक्स और अन्य यूनिक्स जैसे ऑपरेटिंग सिस्टम में वर्तमान कार्य निर्देशिका को बदलने के लिए सीडी (परिवर्तन निर्देशिका) कमांड का उपयोग किया जाता है। इस ट्यूटोरियल में, हम आपको दिखाएंगे कि अपने सिस्टम के डायरेक्टरी ट्री को नेविगेट करने के लिए cd कमांड का उपयोग कैसे करें।