फ़ाइलों को हटाना मेरे लिए नहीं है जिसका आपको उपयोग करना चाहिए rm। यहाँ एक विकल्प है:
sudo apt-get install gvfs # install a tool that allows you to put stuff in the trash
alias "trash"="gvfs-trash" # you can also put this in .bash_aliases or simply use the command without alias
trash *.bak # trash the files (thus moving them to the trash bin)
जैसा कि फ्लिम टिप्पणी में बताता है:
पैकेज gvfs पर निर्भरता के बिना trash-cliएक ही काम करता है gvfs-trash।
इसलिए:
sudo apt-get install trash-cli
आपको इसके लिए एक उपनाम बनाने की आवश्यकता नहीं है, क्योंकि trash-cliपैकेज एक कमांड प्रदान करता है trash, जो हमें चाहिए।
जैसा कि एलिया कगन व्यापक टिप्पणियों में स्पष्ट करता है, आप भी इस पुनरावर्ती का उपयोग कर सकते हैं find। उस स्थिति में आप एक उपनाम का उपयोग नहीं कर सकते हैं, इसलिए नीचे दिए गए आदेश मान लें कि आपने स्थापित किया है trash-cli। मैं एलियाह की टिप्पणियों को संक्षेप में प्रस्तुत करता हूं:
यह कमांड .bakवर्तमान निर्देशिका या इसके उपनिर्देशिकाओं या नीचे कहीं भी सभी फाइलों को खोजती है और सहानुभूति देती है।
find . -name '*.bak' -xtype f
उन्हें हटाने के लिए, कमांड के -execसाथ जोड़ें trash:
find . -name '*.bak' -xtype f -exec trash {} +
-xtype fफ़ाइलों का चयन करता है और फ़ाइलों के लिए सहानुभूति रखता है, लेकिन फ़ोल्डर नहीं। .Bak फ़ोल्डर को हटाने के लिए, उस भाग को हटा दें, और उपयोग करें -execdir, जो निर्देशिकाओं के अंदर फ़ाइलों के cannot trash non-existentलिए त्रुटियों से बचा जाता है :.bak.bak
find . -name '*.bak' -execdir trash {} +
rm *.bak?