Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Bash प्रोग्रामिंग

Bash में पुरानी फ़ाइलें हटाएं: दिन, घंटे, या मिनट के अनुसार हटाएं (उदाहरण)

यह लेख आपको दिखाएगा कि दिए गए दिनों की संख्या से पुरानी फ़ाइलों को कैसे हटाएं (या घंटे/मिनट) मैन्युअल रूप से या Bash स्क्रिप्ट के माध्यम से स्वचालित रूप से। उदाहरण शामिल।

कुछ दिनों (या मिनट, या घंटे) से पुरानी फ़ाइलों को हटाने के लिए दो Linux कमांड का उपयोग किया जाता है – rm और find।

rm के साथ फ़ाइलें हटाना

सबसे पहले, rm कमांड। rm कमांड का उपयोग Linux में फ़ाइलों और डायरेक्टरी को हटाने के लिए किया जाता है। यहां इसके उपयोग के बारे में पूरा लेख है:

Linux में rm कमांड [उदाहरण के साथ]

rm को फ़िल्टर की गई फ़ाइलों की सूची पास करना

अगला घटक, find कमांड। find कमांड का उपयोग फ़ाइलों को मानदंडों के सेट के आधार पर खोजने के लिए किया जाता है – इस मामले में, फ़ाइल की उम्र (समय बीतने के बाद से इसे संशोधित किया गया था)। find कमांड पर हमारा लेख यहां है:

Linux में Find कमांड [उपयोगी उदाहरणों के साथ]

उन्हें एक साथ रखना – उदाहरण

find और rm का एक साथ उपयोग करना:

find /path/to/files/* -mtime +7 -exec rm {} \;

यहां क्या हो रहा है?

  • find को डायरेक्टरी /path/to/files पर बुलाया जाता है
    • -mtime विकल्प को find को +7 मान के साथ पास किया जाता है – अर्थात 7 दिन से अधिक पहले संशोधित फ़ाइलें
    • exec विकल्प को find को प्रत्येक मिलान फ़ाइल के विरुद्ध चलाने के लिए कमांड के साथ पास किया जाता है
  • rm को find में -exec विकल्प द्वारा बुलाया जाता है
    • यह find को दी गई शर्तों से मेल खाने वाली सभी फ़ाइलों को हटा देगा
    • लाइन के अंत में कर्ली ब्रेसिज़, स्लैश, और सेमीकोलन उस कमांड के अंत को सिग्नल करते हैं जो find को प्रत्येक मिलान फ़ाइल पर चलाना चाहिए

दिनों के बजाय घंटे, मिनट

दिनों के बजाय मिनटों को समय की इकाई के रूप में उपयोग करने के लिए, आप -mmin को -mtime के बजाय स्थानापन्न कर सकते हैं।

find /path/to/files/* -mmin +30 -exec rm {} \;

उपरोक्त उदाहरण 30 मिनट से पुरानी फ़ाइलों को हटा देगा।

इसे स्क्रिप्ट बनाना

इसे टाइप करने के बजाय, आप इसे स्क्रिप्ट बना सकते हैं

#!/bin/bash find /path/to/files/* -mtime +7 -exec rm {} \;

उपरोक्त स्निपेट को एक फ़ाइल में सहेजें (उदाहरण के लिए deletescript.sh नाम से), और फिर इसे चलाकर कॉल किया जा सकता है:

./deletescript.sh

यदि आप इसे कहीं से भी चलाना चाहते हैं तो आप कमांड के लिए एक उपनाम भी बना सकते हैं।

पुरानी फ़ाइलों के हटाने को शेड्यूल करना

यदि आप कमांड को एक निर्धारित अंतराल पर स्वचालित रूप से चलाना चाहते हैं, तो इसे अपने crontab में जोड़ें। crontab फ़ाइल वह जगह है जहां Linux में उपयोगकर्ता के शेड्यूल किए गए कार्य रखे जाते हैं, और इसे निम्न चलाकर संपादित किया जा सकता है:

crontab -e

उपरोक्त चलाने पर, crontab एडिटर प्रदर्शित होगा। फ़ाइल में निम्न जोड़कर हर दिन स्क्रिप्ट चलाएं:

@daily find /path/to/files/* -mtime +7 -exec rm {} \;

  1. एक सरल कमांड से सभी .DS_Store फ़ाइलों को ढूंढें और हटाएं एक सरल कमांड से सभी .DS_Store फ़ाइलों को ढूंढें और हटाएं

    यदि आप मैक OS X उपयोगकर्ता हैं, तो आप शायद उस .DS_Store फ़ाइल से परिचित होंगे जो सिस्टम स्वचालित रूप से तब बनाता है जब आप एक फ़ोल्डर खोलते हैं। .DS_Store फ़ाइल फ़ोल्डर के कस्टम विशेषताओं को संग्रहीत करती है, जैसे आइकन की स्थिति या पृष्ठभूमि छवि का चयन, ताकि अगली बार जब आप उसी फ़ोल्डर को खोलें तो यह

  1. अपने Mac पर बड़ी फ़ाइलों को त्वरित ढूंढें और हटाएं – एक चरण-दर-चरण गाइड अपने Mac पर बड़ी फ़ाइलों को त्वरित ढूंढें और हटाएं – एक चरण-दर-चरण गाइड

    स्पेस सफाई के लिए अपने Mac पर फ़ाइलें हटाना एक अच्छा विचार है। विशेष रूप से नियमित आधार पर बड़ी फ़ाइलें। यदि आप ऐसा करना भूल जाते हैं, तो आपका Mac आसानी से अव्यवस्थित हो जाएगा और अंततः प्रदर्शन समस्याओं का कारण बनेगा। जब आपका Mac स्टोरेज से बाहर चल रहा हो, तो यह जानना आवश्यक है कि कौन सी फ़ाइलें सबस

  1. डुप्लिकेट फ़ाइलों को त्वरित और सुरक्षित रूप से हटाएं: चरण-दर-चरण मार्गदर्शिका डुप्लिकेट फ़ाइलों को त्वरित और सुरक्षित रूप से हटाएं: चरण-दर-चरण मार्गदर्शिका

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