दिलचस्प पोस्ट
बहुआयामी सरणी सिकुड़ने वाली कुंजी को चिपकाएं पायथन पूर्णांक पर्वतमाला हिब्रू पात्रों के बजाय MySQL डीबी प्रश्न चिह्न ..? PHP के साथ एक निर्देशिका की पदानुक्रम प्राप्त करें जावा में स्थानीय एप्लिकेशन डेटा फ़ोल्डर कैसे प्राप्त करें? तयशुदा आदेश का डिफ़ॉल्ट मान, नेस्टेड LIMIT के लागू होने से पहले परिणाम प्राप्त करने का सर्वोत्तम तरीका XML विशेषता बनाम एक्सएमएल तत्व सी ++ 11 ने एक मानकीकृत स्मृति मॉडल पेश किया इसका क्या मतलब है? और यह C ++ प्रोग्रामिंग को प्रभावित करने वाला है? पायथन – लीजेंड पाई चार्ट के साथ ओवरलैप करता है आर में एक मैट्रिक्स के प्रत्येक स्तंभ के लिए मतलब की गणना जब तक यह पूरी तरह तैयार नहीं होता है तब तक खिड़की को प्रदर्शित करने से रोकना? सेट और लिस्ट में क्या अंतर है? फ़्लास्क TemplateNotFound त्रुटि उठता है भले ही टेम्पलेट फ़ाइल मौजूद है यूटीएफ -8 पात्रों के साथ परेशानी; मैं जो देखता हूं वह नहीं है जो मैंने संग्रहीत किया है

एक्स घंटे से पुराने फ़ाइलों को कैसे हटाएं

मैं एक बाश स्क्रिप्ट लिख रहा हूं जो पुराने फाइलों को हटाने की जरूरत है।

यह वर्तमान में इसका उपयोग कर कार्यान्वित है:

find $LOCATION -name $REQUIRED_FILES -type f -mtime +1 -delete 

इससे 1 दिन से पुरानी फाइलें हट जाएंगी।

हालांकि, अगर मुझे एक बेहतर संकल्प की जरूरत है, तो 1 दिन, 6 घंटे पुराना जैसा कहें? क्या यह करने के लिए एक अच्छा साफ तरीका है, जैसे कि खोज और -मटाइम का उपयोग करना है?

वेब के समाधान से एकत्रित समाधान "एक्स घंटे से पुराने फ़ाइलों को कैसे हटाएं"

क्या आपकी find में -mmin विकल्प है? इससे आपको आखिरी संशोधन से मिनटों की संख्या का परीक्षण करने दे सकते हैं:

 find $LOCATION -name $REQUIRED_FILES -type f -mmin +360 -delete 

या शायद एक ही काम करने के लिए tmpwatch का उपयोग करने पर tmpwatch करें। phjr ने टिप्पणी में tmpreaper की भी सिफारिश की

आप इस चाल के लिए: 1 घंटे पहले एक फ़ाइल बना सकते हैं, और -newer file तर्क का उपयोग करें

(या ऐसी फाइल बनाने के लिए touch -t का उपयोग touch -t )

मिनट मिनटों के लिए है

मैन पेज को देखने का प्रयास करें

 man find 

अधिक प्रकार के लिए

सनओस 5.10 के लिए

  Example 6 Selecting a File Using 24-hour Mode The descriptions of -atime, -ctime, and -mtime use the ter- minology n ``24-hour periods''. For example, a file accessed at 23:59 is selected by: example% find . -atime -1 -print at 00:01 the next day (less than 24 hours later, not more than one day ago). The midnight boundary between days has no effect on the 24-hour calculation. 

$ PATH -name $ log_prefix "*" $ log_ext -mmin + $ num_mins -exec rm -f {} \ पता लगाएं;

यदि आपके पास "ढूंढें" के आपके संस्करण में "-min" नहीं है, तो "-एमटीएम -0.041667" "आखिरी घंटे के भीतर" के करीब हो जाता है, इसलिए आपके मामले में, इसका उपयोग करें:

 -mtime +(X * 0.041667) 

इसलिए, यदि एक्स का मतलब 6 घंटे है, तो:

 find . -mtime +0.25 -ls 

काम करता है क्योंकि 24 घंटे * 0.25 = 6 घंटे

एक और सवाल पर उनकी टिप्पणी में @conococlast जिस तरह से सोच रहा था, उस रास्ते पर जाने के लिए कोई ऐसा कर सकता है।

उपयोगकर्ता /etc/crontab के लिए फ़ाइल /tmp/hour बनाने के लिए /etc/crontab का उपयोग करें:

 # mh dom mon dow user command 0 * * * * root /usr/bin/touch /tmp/hour > /dev/null 2>&1 

और फिर अपना आदेश चलाने के लिए इसका उपयोग करें:

 find /tmp/ -daystart -maxdepth 1 -not -newer /tmp/hour -type f -name "for_one_hour_files*" -exec do_something {} \;