Wéi fannt Dir Dateien op Basis vun Ännerungsdatum an Zäit am Linux
Normalerweis hu mir d'Gewunnecht vill Informatioun a Form vu Dateien op eisem System ze späicheren. E puer, verstoppte Dateien, e puer an engem getrennten Dossier gehale fir eis einfach ze verstoen, während e puer wéi et ass. Awer, dës ganz Saach fëllt eis Verzeichnisser; normalerweis Desktop, sou datt et ausgesäit wéi e Mess. Awer, de Problem entsteet wa mir no enger bestëmmter Datei musse sichen, déi op engem bestëmmten Datum an Zäit an dëser riseger Sammlung geännert gëtt.
D'Leit, déi bequem mat GUI's sinn, kënnen et mam File Manager fannen, deen Dateien am laange Listingformat oplëscht, wat et einfach mécht erauszefannen wat mir wollten, awer déi Benotzer déi d'Gewunnecht vu schwaarze Schiirme hunn, oder souguer iergendeen, déi op Serveren schafft, déi ouni GUI's sinn, wëllen en einfachen Kommando oder Set vu Kommandoen déi hir Sich erliichteren kënnen.
Richteg Schéinheet vu Linux weist hei, well Linux eng Sammlung vu Kommandoen huet, déi wann se separat oder zesummen benotzt kënne hëllefe fir eng Datei ze sichen, oder eng Sammlung vu Dateien no hirem Numm, Datum vun der Ännerung, Zäit vun der Schafung, oder souguer all Filter deen Dir kéint denken unzewenden fir Äert Resultat ze kréien.
Hei wäerte mir déi richteg Stäerkt vu Linux enthüllen andeems Dir eng Rei vu Kommandoen ënnersicht, déi hëllefe kënnen eng Datei ze sortéieren oder souguer eng Lëscht vu Dateien no Datum an Zäit.
Linux Utilities fir Dateien op Linux ze sortéieren
E puer Basis Linux Kommandozeil Utilities déi just genuch sinn fir e Verzeechnes baséiert op Datum an Zäit ze sortéieren sinn:
ls - D'Inhalter vum Verzeechnes oplëschten, dëst Utility kann d'Dateien an d'Verzeichnisser oplëschten a ka souguer all Statusinformatioun iwwer si oplëschten, dorënner: Datum an Zäit vun der Ännerung oder Zougang, Permissiounen, Gréisst, Besëtzer, Grupp etc.
Mir hu scho vill Artikelen iwwer Linux ls Kommando a Sort Kommando ofgedeckt, Dir kënnt se hei ënnen fannen:
- Léiert ls Command mat 15 Basis Beispiller
- Léiert 7 Advance ls Kommandoen mat Beispiller
- 15 Nëtzlech Interview Froen iwwer ls Command am Linux
sortéieren - Dëse Kommando kann benotzt ginn fir d'Ausgab vun all Sich just no all Feld oder enger bestëmmter Kolonn vum Feld ze sortéieren.
Mir hu schonn zwee Artikelen iwwer Linux Sort Kommando ofgedeckt, Dir kënnt se hei ënnen fannen:
- 14 Linux 'Sort' Kommando Beispiller - Deel 1
- 7 Nëtzlech Linux 'Sort' Kommando Beispiller - Deel 2
Dës Kommandoe sinn u sech ganz mächteg Kommandoen fir ze beherrschen wann Dir op schwaarze Schiirme schafft a mat vill Dateien ze dinn hutt, just fir deen ze kréien deen Dir wëllt.
E puer Weeër fir Dateien mat Datum an Zäit ze sortéieren
Drënner sinn d'Lëscht vun de Kommandoen fir ze sortéieren baséiert op Datum an Zäit.
De Kommando hei drënner lëscht Dateien am laange Listingformat, a sortéiert Dateien op Basis vun der Ännerungszäit, déi neist als éischt. Fir an ëmgedréint Uerdnung ze sortéieren, benotzt -r
Schalter mat dësem Kommando.
# ls -lt total 673768 -rwxr----- 1 tecmint tecmint 3312130 Jan 19 15:24 When You Are Gone.MP3 -rwxr----- 1 tecmint tecmint 4177212 Jan 19 15:24 When I Dream At Night - Marc Anthony-1.mp3 -rwxr----- 1 tecmint tecmint 4177212 Jan 19 15:24 When I Dream At Night - Marc Anthony.mp3 -rwxr----- 1 tecmint tecmint 6629090 Jan 19 15:24 Westlife_Tonight.MP3 -rwxr----- 1 tecmint tecmint 3448832 Jan 19 15:24 We Are The World by USA For Africa (Michael Jackson).mp3 -rwxr----- 1 tecmint tecmint 8580934 Jan 19 15:24 This Love.mp3 -rwxr----- 1 tecmint tecmint 2194832 Jan 19 15:24 The Cross Of Changes.mp3 -rwxr----- 1 tecmint tecmint 5087527 Jan 19 15:24 T.N.T. For The Brain 5.18.mp3 -rwxr----- 1 tecmint tecmint 3437100 Jan 19 15:24 Summer Of '69.MP3 -rwxr----- 1 tecmint tecmint 4360278 Jan 19 15:24 Smell Of Desire.4.32.mp3 -rwxr----- 1 tecmint tecmint 4582632 Jan 19 15:24 Silence Must Be Heard 4.46.mp3 -rwxr----- 1 tecmint tecmint 4147119 Jan 19 15:24 Shadows In Silence 4.19.mp3 -rwxr----- 1 tecmint tecmint 4189654 Jan 19 15:24 Sarah Brightman & Enigma - Eden (remix).mp3 -rwxr----- 1 tecmint tecmint 4124421 Jan 19 15:24 Sade - Smooth Operator.mp3 -rwxr----- 1 tecmint tecmint 4771840 Jan 19 15:24 Sade - And I Miss You.mp3 -rwxr----- 1 tecmint tecmint 3749477 Jan 19 15:24 Run To You.MP3 -rwxr----- 1 tecmint tecmint 7573679 Jan 19 15:24 Roger Sanchez_Another Chance_Full_Mix.mp3 -rwxr----- 1 tecmint tecmint 3018211 Jan 19 15:24 Principal Of Lust.3.08.mp3 -rwxr----- 1 tecmint tecmint 5688390 Jan 19 15:24 Please Forgive Me.MP3 -rwxr----- 1 tecmint tecmint 3381827 Jan 19 15:24 Obvious.mp3 -rwxr----- 1 tecmint tecmint 5499073 Jan 19 15:24 Namstey-London-Viraaniya.mp3 -rwxr----- 1 tecmint tecmint 3129210 Jan 19 15:24 MOS-Enya - Only Time (Pop Radio mix).m
Oplëschtung vun Dateien am Verzeechnes baséiert op der leschter Zougangszäit, dh baséiert op der Zäit wou d'Datei fir d'lescht accesséiert gouf, net geännert.
# ls -ltu total 3084272 drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:24 Music drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:22 Linux-ISO drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:22 Music-Player drwx------ 3 tecmint tecmint 4096 Jan 19 15:22 tor-browser_en-US drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:22 bin drwxr-xr-x 11 tecmint tecmint 4096 Jan 19 15:22 Android Games drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:22 Songs drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:22 renamefiles drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:22 katoolin-master drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:22 Tricks drwxr-xr-x 3 tecmint tecmint 4096 Jan 19 15:22 Linux-Tricks drwxr-xr-x 6 tecmint tecmint 4096 Jan 19 15:22 tuptime drwxr-xr-x 4 tecmint tecmint 4096 Jan 19 15:22 xdm drwxr-xr-x 2 tecmint tecmint 20480 Jan 19 15:22 ffmpeg usage drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:22 xdm-helper
Oplëschtung vun Dateien am Verzeechnes baséiert op der leschter Ännerungszäit vun der Dateistatusinformatioun, oder der ctime
. Dëse Kommando géif dës Datei als éischt oplëschten, deem seng Statusinformatioun wéi: Besëtzer, Grupp, Permissiounen, Gréisst etc viru kuerzem geännert gouf.
# ls -ltc total 3084272 drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 15:24 Music drwxr-xr-x 2 tecmint tecmint 4096 Jan 19 13:05 img -rw------- 1 tecmint tecmint 262191 Jan 19 12:15 tecmint.jpeg drwxr-xr-x 5 tecmint tecmint 4096 Jan 19 10:57 Desktop drwxr-xr-x 7 tecmint tecmint 12288 Jan 18 16:00 Downloads drwxr-xr-x 13 tecmint tecmint 4096 Jan 18 15:36 VirtualBox VMs -rwxr-xr-x 1 tecmint tecmint 691 Jan 13 14:57 special.sh -rw-r--r-- 1 tecmint tecmint 654325 Jan 4 16:55 powertop-2.7.tar.gz.save -rw-r--r-- 1 tecmint tecmint 654329 Jan 4 11:17 filename.tar.gz drwxr-xr-x 3 tecmint tecmint 4096 Jan 4 11:04 powertop-2.7 -rw-r--r-- 1 tecmint tecmint 447795 Dec 31 14:22 Happy-New-Year-2016.jpg -rw-r--r-- 1 tecmint tecmint 12 Dec 18 18:46 ravi -rw-r--r-- 1 tecmint tecmint 1823 Dec 16 12:45 setuid.txt ...
Wann -a
Schalter mat uewe genannte Befehle benotzt gëtt, kënne se souguer déi verstoppte Dateien am aktuellen Verzeechnes lëschten an sortéieren, an -r
Schalter lëscht den Ausgang an ëmgedréint Uerdnung.
Fir méi am-Déift Sortéierung, wéi Sortéieren op Output vum Find Kommando, kann awer och ls
benotzt ginn, awer do Sort
beweist méi hëllefräich well d'Ausgab vläicht net nëmmen Datei huet Numm awer all Felder déi vum Benotzer gewënscht sinn.
Ënner Kommandoen weisen d'Benotzung vum Sortéieren
mam Kommando find
fir d'Lëscht vun de Dateien op Basis vun Datum an Zäit ze sortéieren.
Fir méi iwwer Find Kommando ze léieren, befollegt dëse Link: 35 Praktesch Beispiller vu 'find' Kommando a Linux
Hei benotze mir find
Kommando fir all Dateien am root ('/')
Verzeechnes ze fannen an dann d'Resultat drécken als: Mount an deem de Fichier zougänglech war an dann den Dateinumm. Vun deem komplette Resultat, hei lëschte mir Top 11 Entréen.
# find / -type f -printf "\n%Ab %p" | head -n 11 Dec /usr/lib/nvidia/pre-install Dec /usr/lib/libcpufreq.so.0.0.0 Apr /usr/lib/libchromeXvMCPro.so.1.0.0 Apr /usr/lib/libt1.so.5.1.2 Apr /usr/lib/libchromeXvMC.so.1.0.0 Apr /usr/lib/libcdr-0.0.so.0.0.15 Dec /usr/lib/msttcorefonts/update-ms-fonts Nov /usr/lib/ldscripts/elf32_x86_64.xr Nov /usr/lib/ldscripts/elf_i386.xbn Nov /usr/lib/ldscripts/i386linux.xn
De Kommando hei drënner sortéiert d'Output mam Schlëssel als éischt Feld, spezifizéiert duerch -k1
an dann sortéiert et op Mount wéi spezifizéiert vum M
viraus.
# find / -type f -printf "\n%Ab %p" | head -n 11 | sort -k1M Apr /usr/lib/libcdr-0.0.so.0.0.15 Apr /usr/lib/libchromeXvMCPro.so.1.0.0 Apr /usr/lib/libchromeXvMC.so.1.0.0 Apr /usr/lib/libt1.so.5.1.2 Nov /usr/lib/ldscripts/elf32_x86_64.xr Nov /usr/lib/ldscripts/elf_i386.xbn Nov /usr/lib/ldscripts/i386linux.xn Dec /usr/lib/libcpufreq.so.0.0.0 Dec /usr/lib/msttcorefonts/update-ms-fonts Dec /usr/lib/nvidia/pre-install
Hei benotze mir erëm find
Kommando fir all d'Fichier'en am Root-Verzeichnis ze fannen, awer elo drécke mir d'Resultat als: leschte Datum wou d'Datei zougeruff gouf, d'lescht Kéier wou d'Datei zougeruff gouf an dann den Dateinumm. Dovunner huelen mir Top 11 Entréen eraus.
# find / -type f -printf "\n%AD %AT %p" | head -n 11 12/08/15 11:30:38.0000000000 /usr/lib/nvidia/pre-install 12/07/15 10:34:45.2694776230 /usr/lib/libcpufreq.so.0.0.0 04/11/15 06:08:34.9819910430 /usr/lib/libchromeXvMCPro.so.1.0.0 04/11/15 06:08:34.9939910430 /usr/lib/libt1.so.5.1.2 04/11/15 06:08:35.0099910420 /usr/lib/libchromeXvMC.so.1.0.0 04/11/15 06:08:35.0099910420 /usr/lib/libcdr-0.0.so.0.0.15 12/18/15 11:19:25.2656728990 /usr/lib/msttcorefonts/update-ms-fonts 11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/elf32_x86_64.xr 11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/elf_i386.xbn 11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/i386linux.xn
Déi ënnescht Zort Kommando sortéiert als éischt op Basis vun der leschter Ziffer vum Joer, sortéiert dann op Basis vun der leschter Ziffer vum Mount an ëmgedréint Uerdnung a sortéiert endlech op Basis vum éischte Feld. Hei heescht '1.8' 8. Kolonn vum éischte Feld an 'n' virun et heescht numeresch Zort, während 'r' ëmgedréint Uerdnungssortéierung bezeechent.
# find / -type f -printf "\n%AD %AT %p" | head -n 11 | sort -k1.8n -k1.1nr -k1 12/07/15 10:34:45.2694776230 /usr/lib/libcpufreq.so.0.0.0 12/08/15 11:30:38.0000000000 /usr/lib/nvidia/pre-install 12/18/15 11:19:25.2656728990 /usr/lib/msttcorefonts/update-ms-fonts 11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/elf32_x86_64.xr 11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/elf_i386.xbn 11/12/15 12:56:34.0000000000 /usr/lib/ldscripts/i386linux.xn 04/11/15 06:08:34.9819910430 /usr/lib/libchromeXvMCPro.so.1.0.0 04/11/15 06:08:34.9939910430 /usr/lib/libt1.so.5.1.2 04/11/15 06:08:35.0099910420 /usr/lib/libcdr-0.0.so.0.0.15 04/11/15 06:08:35.0099910420 /usr/lib/libchromeXvMC.so.1.0.0
Hei benotze mir erëm find
Kommando fir Top 11 Dateien am Root Verzeechnes ze lëschten an d'Resultat am Format ze drécken: d'lescht Kéier gouf d'Datei zougänglech gemaach an dann den Dateinumm.
# find / -type f -printf "\n%AT %p" | head -n 11 11:30:38.0000000000 /usr/lib/nvidia/pre-install 10:34:45.2694776230 /usr/lib/libcpufreq.so.0.0.0 06:08:34.9819910430 /usr/lib/libchromeXvMCPro.so.1.0.0 06:08:34.9939910430 /usr/lib/libt1.so.5.1.2 06:08:35.0099910420 /usr/lib/libchromeXvMC.so.1.0.0 06:08:35.0099910420 /usr/lib/libcdr-0.0.so.0.0.15 11:19:25.2656728990 /usr/lib/msttcorefonts/update-ms-fonts 12:56:34.0000000000 /usr/lib/ldscripts/elf32_x86_64.xr 12:56:34.0000000000 /usr/lib/ldscripts/elf_i386.xbn 12:56:34.0000000000 /usr/lib/ldscripts/i386linux.xn
De Kommando hei drënner sortéiert d'Ausgab baséiert op der éischter Kolonn vum éischte Feld vun der Ausgang déi éischt Ziffer vun der Stonn ass.
# find / -type f -printf "\n%AT %p" | head -n 11 | sort -k1.1n 06:08:34.9819910430 /usr/lib/libchromeXvMCPro.so.1.0.0 06:08:34.9939910430 /usr/lib/libt1.so.5.1.2 06:08:35.0099910420 /usr/lib/libcdr-0.0.so.0.0.15 06:08:35.0099910420 /usr/lib/libchromeXvMC.so.1.0.0 10:34:45.2694776230 /usr/lib/libcpufreq.so.0.0.0 11:19:25.2656728990 /usr/lib/msttcorefonts/update-ms-fonts 11:30:38.0000000000 /usr/lib/nvidia/pre-install 12:56:34.0000000000 /usr/lib/ldscripts/elf32_x86_64.xr 12:56:34.0000000000 /usr/lib/ldscripts/elf_i386.xbn 12:56:34.0000000000 /usr/lib/ldscripts/i386linux.xn
Dëse Kommando sortéiert d'Ausgab vum ls -l
Kommando baséiert op 6. Feld Mount weise, dann baséiert op 7. Feld dat Datum ass, numeresch.
# ls -l | sort -k6M -k7n total 116 -rw-r--r-- 1 root root 0 Oct 1 19:51 backup.tgz drwxr-xr-x 2 root root 4096 Oct 7 15:27 Desktop -rw-r--r-- 1 root root 15853 Oct 7 15:19 powertop_report.csv -rw-r--r-- 1 root root 79112 Oct 7 15:25 powertop.html -rw-r--r-- 1 root root 0 Oct 16 15:26 file3 -rw-r--r-- 1 root root 13 Oct 16 15:17 B -rw-r--r-- 1 root root 21 Oct 16 15:16 A -rw-r--r-- 1 root root 64 Oct 16 15:38 C
Conclusioun
Ähnlech, andeems Dir e bësse Wëssen iwwer d'Sortbefehl hutt, kënnt Dir bal all Oplëschtung sortéieren op Basis vun all Feld a souguer seng all Kolonn déi Dir wëllt. Dëst waren e puer Tricken fir Iech ze hëllefen Dateien op Basis vun Datum oder Zäit ze sortéieren. Dir kënnt Är eegen Tricken bauen baséiert op dësen. Wéi och ëmmer, wann Dir en aneren interessanten Trick hutt, kënnt Dir dat ëmmer an Äre Kommentaren ernimmen.