Razumijevanje vremenskih oznaka Linux datoteka: mtime, ctime i atime

Razumijevanje vremenskih oznaka Linux datoteka: mtime, ctime i atime

Operacijski sustav Linux prati tri vremenske oznake za svaku datoteku na vašem sustavu. Ove vremenske oznake omogućuju vam da otkrijete kada je datoteka zadnji put ažurirana. Ali što oni sve znače? A kako u ovo vrijeme saznati za datoteku? Postoji li razlika u imenicima?





Razumijevanje atime, ctime i mtime može odgovoriti na sva ova pitanja. Ovo su tri vremenske oznake koje Unix datotečni sustavi prate. Ako ikada trebate saznati detalje o tome što se promijenilo i kada, čitajte dalje.





Koje su tri vremenske oznake Unixa?

Svaka datoteka ima tri vremenske oznake povezane s njom. Linux ih pohranjuje u Unix format vremena koji mjeri sekunde od epohe. Tri vremenske oznake obično se nazivaju atime, ctime i mtime.





The mtime je najčešći i često najkorisniji. Zalaže se za modificirano vrijeme . To je vrijeme u kojem je sadržaj datoteke zadnji put zapisan na disk.

Nešto drugačije je ctime koji stoji za promijeniti vrijeme . Ova vremenska oznaka prati promjene metapodataka, poput vlasništva i dopuštenja. Uključuje preimenovanje datoteke - barem na tipičnim modernim Linux OS -ima. No ažurira se i kad se sadržaj datoteke promijeni, pa je uvijek ažuriran kao i mtime.



Treća vremenska oznaka je Vrijeme , koja pohranjuje zadnji put kad je netko pristupio datoteci.

pokrenite Mac OS na Windows 10

Kako se vremenske oznake primjenjuju na imenike

Linux direktorij je, u biti, popis datoteka u tom direktoriju. Stoga će stvaranje datoteke unutar direktorija ažurirati mtime tog direktorija. Navođenje datoteka u direktoriju pomoću ls naredba, na primjer, ažurira svoje vrijeme pristupa. I, kao i kod datoteke, promjena dopuštenja ili naziva direktorija ažurira njegov ctime.





Što je s vremenom stvaranja?

Možda će vas iznenaditi saznanje da Linux jednostavno ne prati vrijeme stvaranja. U početku biste to mogli pretpostaviti ctime označava vrijeme stvaranja. Jednako tako, mogli biste to smatrati vrlo korisnom stvari koju možete saznati.

Mnoge aplikacije spremaju datoteke stvarajući ih od početka svaki put. Time bi se vrijeme stvaranja učinilo pogrešnim.





Kako pregledati različite vremenske oznake

Najjednostavniji način za dobivanje podataka o vremenskoj oznaci je the ls naredba . Zadani dugi format prikazuje detalje za mtime:

$ date
Sat Mar 6 16:57:01 GMT 2021
$ echo 'hello, world' > tmp
$ ls -l tmp.txt
-rw-r--r-- 1 ubuntu ubuntu 13 2021-03-06 16:57 tmp

Umjesto toga možete prikazati vrijeme pomoću -u zastava:

$ date
Sat Mar 6 16:59:33 GMT 2021
$ cat tmp
hello, world
$ ls -lu tmp
-rw-r--r-- 1 ubuntu ubuntu 13 2021-03-06 16:59 tmp
$ ls -l tmp
-rw-r--r-- 1 ubuntu ubuntu 13 2021-03-06 16:57 tmp

Zadnji redak potvrđuje da se mtime ove datoteke razlikuje od vremena. Na kraju, upotrijebite -c zastavica za prikaz ctime:

$ date
Sat Mar 6 17:02:34 GMT 2021
$ mv tmp tmp2
$ ls -lc tmp2
-rw-r--r-- 1 ubuntu ubuntu 13 2021-03-06 17:02 tmp2
$ ls -l tmp2
-rw-r--r-- 1 ubuntu ubuntu 13 2021-03-06 16:57 tmp2
$ ls -lu tmp2
-rw-r--r-- 1 ubuntu ubuntu 13 2021-03-06 16:59 tmp2

Ovaj put potvrđujemo da su sva tri puta različita i točna: izmijenili smo, zatim pristupili, pa promijenili datoteku tim redoslijedom.

Alternativa ls -u je država naredba. Ova naredba prikazuje detalje niske razine iz inode datoteke. Olakšava provjeru sva tri puta odjednom. Zaobilazi i problem neintuitivnog -u zastava. Evo primjera izlaza za istu datoteku:

$ stat tmp2
File: `tmp2'
Size: 13 Blocks: 8 IO Block: 4096 regular file
Device: 801h/2049d Inode: 327688 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/ ubuntu) Gid: ( 1000/ ubuntu)
Access: 2021-03-06 16:59:45.000000000 +0000
Modify: 2021-03-06 16:57:59.000000000 +0000
Change: 2021-03-06 17:02:43.000000000 +0000

Kako ažurirati vremenske oznake

The dodir naredba mijenja vrijeme izmjene i pristup datoteci. To je također prikladan način stvaranja prazne datoteke, što će učiniti ako datoteka već ne postoji:

priključeni tvrdi disk ne prikazuje se
touch tmp

Prema zadanim postavkama postavit će mtime i atime na trenutno vrijeme. Možete postaviti drugačije vrijeme pomoću -t zastava:

touch -t 202103061200 tmp

Također možete postaviti samo mtime ili atime pomoću -m i -do zastave:

touch -t 202103061300 -m tmp

Imajte na umu da se ctime uvijek ažurira kad postavimo atime ili mtime.

Kako pronaći datoteke na temelju vremenskih oznaka

The pronaći naredba je još jedan alat koji djeluje na vremenske oznake. Može filtrirati datoteke na temelju atime, ctime ili mtime. Na primjer:

find . -amin 15

pronaći će datoteke kojima je pristupljeno prije točno 15 minuta, dok:

find . -mtime -2

pronaći će datoteke izmijenjene u posljednja dva dana.

Linux tri puta prati svaku datoteku

Najčešće referencirana vremenska oznaka datoteke je mtime. Ovo je datum i vrijeme koje popis datoteka prikazuje, na primjer. No i druge dvije vremenske oznake mogu biti korisne, pod uvjetom da razumijete na što se odnose. Konkretno, uvijek zapamtite da ctime predstavlja promijeniti vrijeme, ne stvaranje vrijeme.

Naredbe kao što su touch i stat korisni su članovi Linux alata za naredbeni redak. Ove naredbe će poboljšati vaš radni tijek u Linuxu omogućujući vam brzo stvaranje novih datoteka.

Udio Udio Cvrkut E -pošta Referentna tablica za naredbe za Linux

Ova jednostavna podvala pomoći će vam da se u kratkom vremenu snađete u terminalu naredbenog retka Linuxa.

najbolja kombinacija bežičnog miša i tipkovnice
Pročitajte Dalje Povezane teme
  • Linux
  • Upravljanje datotekama
  • Linux Distro
O autoru Bobby Jack(Objavljeno 58 članaka)

Bobby je entuzijast u tehnologiji koji je skoro dva desetljeća radio kao programer softvera. Oduševljen je igranjem igara, radi kao urednik recenzija u Switch Player Magazinu, a uronjen je u sve aspekte online izdavaštva i web razvoja.

Više od Bobbyja Jacka

Pretplatite se na naše obavijesti

Pridružite se našem biltenu za tehničke savjete, recenzije, besplatne e -knjige i ekskluzivne ponude!

Kliknite ovdje za pretplatu