सवाल निर्देशिका के लिए प्रतीकात्मक लिंक कैसे निकालें?


मैंने निम्नलिखित कमांड के साथ एक प्रतीकात्मक लिंक बनाया:

ln -s ../test5

मैं इसे अभी हटाना चाहता हूं लेकिन मेरा आरएम विफल रहता है:

$ rm -Rf test5/
rm: cannot remove `test5/': Not a directory
$ rm test5/
rm: cannot remove directory `test5/': Is a directory
$ rmdir test5/
rmdir: test5/: Not a directory
$rm -r test5/
rm: cannot remove `test5/': Not a directory

$ls -l
 0 lrwxrwxrwx  1 peter peter    8 Jul 20 15:30 test5 -> ../test5/

मैं अपना प्रतीकात्मक लिंक कैसे हटा सकता हूं? (उबंटू 8.10, बाश)


91
2017-07-20 12:40


मूल


सुझाव: rm -r link/ लक्ष्य पर सामग्री हटा देता है - Gayan Weerakutti


जवाब:


पिछला स्लैश निकालें:

तत्काल के साथ:

$ rm test5

तत्काल के बिना:

$ rm -f test5


116
2017-07-20 12:51



इसे कहते हैं permission denied। - 1.21 gigawatts
बिना छेड़छाड़ के। इसलिए test5/ गलत है। - pylover


प्रयत्न rm test5
(प्रशिक्षण स्लैश के बिना)।

स्लैश इंगित करता है कि 'test5' एक गंभीर है जबकि यह वास्तव में एक फ़ाइल है जोड़ने एक निर्देशिका के लिए।


18
2017-07-20 12:54





आप पिछली स्लैश को हटा सकते हैं:

$ rm test5

यह फ़ाइल को हटा देगा (यानी symlink)।

वैकल्पिक रूप से आप अनलिंक का उपयोग कर सकते हैं:

$ unlink test5

फिर से आपको पिछली स्लैश को छोड़ना होगा क्योंकि आप symlink को अनलिंक करने का प्रयास कर रहे हैं निर्देशिका नहीं।


11
2017-07-20 13:06





कभी-कभी यदि आप उस लिंक को नाम देने के लिए स्वत: पूर्ण का उपयोग करते हैं जिसे आप हटाना चाहते हैं तो आपको पीछे की ओर स्लैश नहीं दिखाई दे सकता है, लेकिन यह 'आधा है' और अदृश्य स्लैश अभी भी उस लिंक को हटाने का प्रयास करते समय डिलीट त्रुटि देता है।

तो उस मामले में चरित्र के रूप में चरित्र को टाइप करें जिसे लिंक "test5" के रूप में हटाया जा सकता है। rm test5


0
2018-02-14 23:23



अदृश्य स्लैश के बारे में कभी नहीं सुना। यह क्या खोलता है? - Kamil Maciorowski
मुझे लगता है कि यह संभवतः लाइनव्रैप + कर्सर द्वारा छुपाए जाने वाले चरित्र का संदर्भ है? - bertieb


मैं मूर्खता से पूछता हूं, लेकिन आपने कोशिश की है rm -r? चूंकि यह एक प्रतीकात्मक लिंक है, इसलिए इसे लक्ष्य को हटाना नहीं चाहिए।

संपादित करें: बस कोशिश की, यह सही है

2 संपादित करें: rmdir मैन पेज की अपनी पहली पंक्ति में कहता है कि यह खाली निर्देशिका हटा देता है। मुझे लगता है क्योंकि यह एक लिंक है जिसकी निर्देशिका फाइलों पर इसकी निर्देशिका बिट की जांच की गई थी, लेकिन क्योंकि आरएमडीआईआर को संदेह नहीं है कि मामले होने पर यह त्रुटियों को थूकता है। बस आरएम-आर का प्रयोग करें


-2
2017-07-20 12:42



यह मुझे निर्देशिका में फ़ाइलों को हटाने के लिए कहेंगे, जो मैं चाहता हूं वह नहीं है, मैं केवल लिंक को हटाना चाहता हूं - Peter Smit
पूछना इसलिए था क्योंकि इंटरैक्टिव को मेरे .profile में परिभाषित किया गया था। आरएम-आर को प्रतिक्रिया जोड़ा गया। यह अभी भी काम नहीं करता है। - Peter Smit
आपने पीछे की ओर छोड़ा '/' यही कारण है कि यह असफल रहा - bobby