जवाबों:
आप उपयोग कर सकते हैं:
ls -Rt
जहां पुनरावर्ती का-R अर्थ है (उपनिर्देशिका शामिल करें) और इसका अर्थ है "अंतिम संशोधन तिथि के अनुसार क्रमबद्ध करें"।-t
संशोधित तिथि के अनुसार क्रमबद्ध फ़ाइलों की सूची देखने के लिए, उपयोग करें:
ls -l -Rt
इसे प्राप्त करने के लिए एक उपनाम भी बनाया जा सकता है:
alias lt='ls -lht'
lt
जहां -hअधिक पठनीय आउटपुट दिया जाता है।
ls -lrt[RhA]। -rसूची के तल पर हाल ही में संपादित किए गए सामान को छोड़कर, क्रम को उलट देता है ...
-ilaआपको उन सभी जानकारियों के लिए बहुत कुछ मिलता है जिनकी आपको आवश्यकता होगी। $ ls -ilaRt
ll -Rtकरना मेरे लिए एकदम सही समाधान था क्योंकि मुझे फाइलों को सबसे हाल ही में संशोधित करके देखने की आवश्यकता थी। यह दूसरों के लिए मददगार हो सकता है।
llमौजूद नहीं है और एक कमांड नहीं है। यह ज्यादातर बैश शेल में एक उपनाम है, लेकिन अधिकांश / कुछ / में परिभाषित नहीं है? लिनक्स वितरण। कुछ इसे alias ll='ls -l'/etc/bash.bashrc या /etc/.bashrc के रूप में परिभाषित करते हैं । इस प्रकार यह काम नहीं कर सकता है और यह ओपीएस प्रणाली पर मौजूद नहीं हो सकता है। ls -l -Rtकम से कम उपयोग करें , जैसा lsकि एक मानक आदेश है जैसा कि पॉज़िक्स द्वारा परिभाषित किया गया है। या आप निर्दिष्ट करें alias ll='ls -l'; ll -Rt।
यदि आप एक मास्टर सूची चाहते हैं, जिसमें सभी फाइलें एक साथ संशोधन तिथि के अनुसार क्रमबद्ध होती हैं , तो वे उस निर्देशिका को दिखाते हैं जिसमें वे नहीं होते हैं, लेकिन निर्देशिका द्वारा समूहीकृत नहीं किया जाता है , आप इसका उपयोग कर सकते हैं:
find . -type f -printf "%-.22T+ %M %n %-8u %-8g %8s %Tx %.8TX %p\n" | sort | cut -f 2- -d ' '
परिणाम बहुत कुछ दिखता है ls -l:
-rw-r - r-- 1 रूट रूट 3892 08/11/2009 11:03:36 /us/share/man/man1/xmllint.1.gz -rw-r - r-- 1 रूट रूट 22946 08/13/2009 11:59:20/usr/share/man/man1/curl.1.gz -rw-r - r-- 1 रूट रूट 728 08/17/2009 12:06:33 /us/share/man/man1/thunderbird.1.gz -rw-r - r-- 1 रूट रूट 873 08/18/2009 10:52:47/usr/share/man/man1/libgnutls-config.1.gz -rw-r - r-- 1 रूट रूट 2552 08/19/2009 02:00:34/usr/share/man/man3/Purple.3pm.gz -rw-r - r-- 1 रूट रूट 9546 08/19/2009 02:02:00 /us/share/man/man1/pidgin.1.gz -rw-r - r-- 1 रूट रूट 2201 08/19/2009 02:02:46/usr/share/man/man3/Pidgin.3pm.gz -rw-r - r-- 1 रूट रूट 926 08/19/2009 02:03:05 /us/share/man/man1/purple-remote.1.gz -rw-r - r-- 1 रूट रूट 18052 08/19/2009 04:11:47/usr/share/man/man1/mono.1.gz -rw-r - r-- 1 रूट रूट 1845 08/19/2009 04:11:47/usr/share/man/man5/mono-config.5.gz
मैक ओएस एक्स का उपयोग करने वाले आप में से, बीएसडी ढूंढने पर विकल्प -प्रिफ़ उपलब्ध नहीं है (आपको यह त्रुटि मिलेगी :)find: -printf: unknown primary or operator । सौभाग्य से आप के माध्यम से जीएनयू खोजने स्थापित कर सकते हैं Homebrew (वहाँ के लिए एक विकल्प होना चाहिए फिंक और macports रूप में अच्छी तरह):
brew install findutils
इसे स्थापित करने के बाद GNU खोज आपके लिए उपलब्ध होना चाहिए gfind। तो, आपको बस इतना करने की आवश्यकता है कि ऊपर दी गई लाइन को बदल दें:
gfind . -type f -printf "%-.22T+ %M %n %-8u %-8g %8s %Tx %.8TX %p\n" | sort | cut -f 2- -d ' '
findलेखक के रूप में परिचित नहीं हैं , उन तर्कों को -printfप्रारूप निर्देश हैं जो कि उस पृष्ठ में man findपांचवें उदाहरण के लिए खोजे जा सकते हैं printf।
find . -type f -print0 | xargs -0 stat -f "%m %Sp %l %-8Su %-8Sg %8z %Sm %N" | sort | cut -f 2- -d' 'आपको केवल अंतर्निहित उपयोगिताओं का उपयोग करके MacOS पर लगभग एक ही आउटपुट
sort -rछँटाई को उलटने के लिए और शीर्ष पर सबसे हाल ही में संशोधित फ़ाइलें हैं।
मैक OSX 2019
यदि आपको इस बात की परवाह नहीं है कि यह किस समय बनाया गया था लेकिन आप चाहते हैं कि आपकी सूची क्रमबद्ध हो जाए तो इस कमांड का उपयोग करें
==> ls -t
यदि आप ऑर्डर करना चाहते हैं और तिथि और उपयोगकर्ता जानकारी देखना चाहते हैं तो इस कमांड का उपयोग करें
===> ls -lt
के लिए zshउपयोगकर्ताओं, आप भी इस्तेमाल कर सकते हैं ग्लोब क्वालिफायर (भी पर प्रलेखित man zshexpn):
echo *(om)
कहाँ oके लिए खड़ा है ऊपर सॉर्ट क्रम, और mके लिए खड़ा है अंतिम संशोधन समय ।
लूप या किसी अन्य कमांड के लिए उपयोग किए जाने पर यह उपयोगी हो सकता है:
for file in *(^om); do
[ -e "$file" ] || continue
# do something with file orderer from least recently modified to last modified
done
या एक और ग्लोब क्वालीफायर के साथ जंजीर:
last_modified_file=(*(om[1]))