उन फाइलों को खोजें जो पिछले 24 घंटों में बदली गई हैं


263

उदाहरण के लिए, एक MySQL सर्वर मेरे उबंटू मशीन पर चल रहा है। पिछले 24 घंटों के दौरान कुछ डेटा में बदलाव किया गया है।

क्या (लिनक्स) स्क्रिप्ट पिछले 24 घंटों के दौरान बदल दी गई फ़ाइलों को पा सकते हैं?

कृपया फ़ाइल नाम, फ़ाइल आकार और संशोधित समय सूचीबद्ध करें।


जवाबों:


477

किसी विशेष विशिष्ट निर्देशिका और उसके उप-निर्देशिकाओं में पिछले 24 घंटों (अंतिम पूर्ण दिन) में संशोधित सभी फाइलों को खोजने के लिए:

find /directory_path -mtime -1 -ls

अपनी पसंद के हिसाब से होना चाहिए

-इससे पहले कि 1महत्वपूर्ण है - इसका मतलब है कि कुछ भी एक दिन बदल गया है या कम पहले। एक +से पहले 1के बजाय मतलब कुछ भी कम से कम एक दिन पहले बदला जाएगा, जबकि कुछ भी नहीं होने से पहले 1मतलब था यह बदल गया था exacted एक दिन पहले, कोई और अधिक, कम नहीं।


17
अच्छा! पिछले 2 घंटे कैसे?
जैकवम

114
माइम के बजाय "-mmin -120" का उपयोग करें
Xavjer

1
-संख्यात्मक मान से पहले क्यों ?
एस्सेटी

6
-समय के तर्क को फ़ाइल की आयु में पूरे दिन की संख्या के रूप में व्याख्या की जाती है। -एमटी + एन का मतलब है सख्ती से अधिक, -टाइम का मतलब है सख्ती से कम।
Xavjer

3
पाठक के लिए: -lsकिसी स्क्रिप्ट का उपयोग करते समय हटाना न भूलें
redolent

41

आप ऐसा कर सकते हैं

find . -mtime 0

से man find:

[] प्रत्येक फ़ाइल को अंतिम बार संशोधित करने के बाद का समय 24 घंटे से विभाजित होता है और किसी भी शेष को छोड़ दिया जाता है। इसका मतलब है कि मैच-टाइम 0 के लिए, एक फ़ाइल को अतीत में एक संशोधन करना होगा जो कि 24 घंटे से कम समय पहले है।



11

GNU- संगत सिस्टम (यानी लिनक्स) पर:

find . -mtime 0 -printf '%T+\t%s\t%p\n' 2>/dev/null | sort -r | more

यह उन फ़ाइलों और निर्देशिकाओं को सूचीबद्ध करेगा जिन्हें पिछले 24 घंटों ( -mtime 0) में संशोधित किया गया है । यह उन्हें अंतिम संशोधित समय के साथ एक प्रारूप में सूचीबद्ध करेगा जो कि छंटनी और मानव-पठनीय ( %T+) दोनों है, उसके बाद फ़ाइल आकार ( %s), उसके बाद पूरा फ़ाइल नाम ( %p), प्रत्येक टैब द्वारा अलग किया गया ( )\t )।

2>/dev/nullकिसी भी stderr आउटपुट को फेंकता है, ताकि त्रुटि संदेश पानी को खराब न करें; sort -rपरिणामों को पहले हाल ही में संशोधित करके क्रमबद्ध करें; और | moreएक समय में परिणामों के एक पृष्ठ को सूचीबद्ध करता है।


2
तुम भी इस्तेमाल कर सकते हैं | lessके बजाय | more, मुझे लगता है।
स्टीफन जी टग्गी

7

अन्य लोगों के लिए जो भविष्य में (अपने सहित) यहाँ आते हैं, उदाहरण के लिए, विशिष्ट फ़ाइल प्रकारों को खोजने के लिए एक -name विकल्प जोड़ें: find /var -name "*.php" -mtime -1 -ls


5

इस कमांड ने मेरे लिए काम किया

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