क्या rm वर्णानुक्रम में काम करता है?


4

मेरे पास एक फ़ोल्डर में कई फाइलें थीं, जिसमें मैं गलती rm *से हस्तक्षेप करने से पहले भाग गया था।

ऐसा लगता है कि a, b, और c से शुरू होने वाली फाइलें चली गई हैं, लेकिन मुझे यकीन नहीं है, क्योंकि मुझे सभी फाइलों का नाम नहीं पता था।

क्या मैं उस rmकाम पर भरोसा कर सकता हूं जो वर्णानुक्रम में काम करता है ताकि मैं यह जान सकूं कि कौन सी फाइलें निकाली गई हैं?


विषय से थोड़ा हटकर, लेकिन यदि आप उन फ़ाइलों को पुनर्प्राप्त करना चाह रहे हैं जिन्हें आप TestDisk का उपयोग कर सकते हैं या जहाँ rm कमांड जारी किया
कार्तिक टी

जवाबों:


7

rmआवश्यक रूप से वर्णानुक्रम में काम नहीं करता है, लेकिन यह उस क्रम में काम करता है जब आप इसकी दलीलों की आपूर्ति करते हैं (इसके साथ -rयह अधिक जटिल हो जाता है, लेकिन यहां कोई फर्क नहीं पड़ता)। यदि आपने जैसा कहा है वैसा ही लिखा है, तो *सभी फ़ाइल नामों का विस्तार वर्णमाला में होगा।

तो हाँ , आपने वर्णानुक्रम में फ़ाइलों को हटा दिया है।

निष्पादित करने का प्रयास करें

echo *

एक निर्देशिका में यह देखने के लिए कि चीजें किस क्रम में दिखाई देती हैं। यह वही आदेश है जो rm *फ़ाइलों को हटा देगा।


1

हाँ वे वर्णानुक्रम में काम करते हैं ।।

आप अनुक्रम की जांच करने के लिए स्ट्रेस कमांड का उपयोग कर सकते हैं और आंतरिक रूप से आपका कर्नेल कैसे काम कर रहा है। नीचे मैं rm कमांड के लिए इस्तेमाल किया जाने वाला स्ट्रेस कमांड है जो इसे * अल्फाबेटिक अनुक्रम में अनुवाद करता है।

surendra@linuxnix.com: ~ / स्क्रिप्ट / अस्थायी / अस्थायी $ st rm -rf *

निष्पादित करें ("/ बिन / rm", ["rm", "-rf", "a.txt", "b.txt", "c.txt", "d.txt"], [/ * ४३ vars * /]) = 0

<- मैंने आउटपुट को क्लिप किया है ->

जहां कभी भी * है, आपका बैश शेल इस क्रम में सभी संयोजनों को देने की कोशिश करेगा। कुछ अन्य कमांड जो इसका समर्थन करते हैं वे हैं cp, mv, find आदि।

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