Operacijski sistem Linux beleži tri časovne žige za vsako datoteko v vašem sistemu. Ti časovni žigi vam omogočajo, da ugotovite, kdaj je bila datoteka nazadnje posodobljena. Toda kaj vse pomenijo? In kako ugotoviti te čase za datoteko? Ali obstajajo razlike pri imenikih?

Razumevanje atime, ctime in mtime lahko odgovori na vsa ta vprašanja. To so trije časovni žigi, ki jim sledijo datotečni sistemi Unix. Če boste kdaj morali izvedeti podrobnosti o tem, kaj se je spremenilo in kdaj, preberite.

Katere so tri časovne znamke Unix?

Vsaka datoteka ima tri časovne žige. Linux jih shrani v Oblika časa Unix ki meri sekunde od epohe. Trije časovni žigi se običajno imenujejo atime, ctime in mtime.

The mtime je najpogostejši in pogosto najbolj uporaben. To pomeni spremenjeni čas. To je čas, ko je bila vsebina datoteke nazadnje zapisana na disk.

Nekoliko drugačen je ctime kar pomeni spremenite čas. Ta časovni žig sledi spremembam metapodatkov, kot so lastništvo in dovoljenja. Vključuje preimenovanje datoteke - vsaj v tipičnih sodobnih operacijskih sistemih Linux. Posodablja pa se tudi, ko se spremeni vsebina datoteke, zato je vedno tako posodobljena kot mtime.

Tretji časovni žig je Čas, ki shranjuje zadnji dostop do datoteke.

Kako se časovni žigi nanašajo na imenike

Imenik Linuxa je v bistvu seznam datotek v tem imeniku. Ustvarjanje datoteke v imeniku bo torej posodobilo mtime tega imenika. Naštevanje datotek v imeniku z uporabo ls ukaz na primer posodobi svoj čas dostopa. Tako kot pri datoteki tudi spreminjanje dovoljenj ali imena imenika posodablja njegov ctime.

Kaj pa čas ustvarjanja?

Morda vas bo presenetilo, ko boste izvedeli, da Linux preprosto ne beleži časa ustvarjanja. To lahko sprva domnevate ctime pomeni čas ustvarjanja. Prav tako lahko o tem razmišljate kot o zelo koristni stvari, ki jo lahko ugotovite.

Številne aplikacije shranijo datoteke tako, da jih vsakič ustvarijo iz nič. To bi uporabo ustvarjalnega časa zavajalo.

Kako si ogledati različne časovne žige

Najpreprostejši način za pridobivanje informacij o časovnem žigu je ls ukaz. Privzeta dolga oblika prikazuje podrobnosti za mtime:

$ datum
6. mar. 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

Namesto tega lahko atime prikažete s pomočjo -u zastava:

$ datum
Sobota, 6. mar. 16:59:33 GMT 2021
$ mačka tmp
Pozdravljen, svet
$ 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

Zadnja vrstica potrjuje, da se mtime te datoteke razlikuje od atime. Na koncu uporabite -c zastava za ogled ctime:

$ datum
Sobota, 6. mar. 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

Tokrat potrjujemo, da so vsi trije različni in pravilni: spremenili smo, nato dostopali in nato spremenili datoteko v tem vrstnem redu.

Alternativa ls je stat ukaz. Ta ukaz prikaže podrobnosti na nizki ravni iz inode datoteke. Olajša preverjanje vseh treh krat hkrati. Obide tudi problem neintuitivnega -u zastavo. Tu je primer izhoda za isto datoteko:

$ stat tmp2
Datoteka: `tmp2 '
Velikost: 13 blokov: 8 IO blok: 4096 navadna datoteka
Naprava: 801h / 2049d Inode: 327688 Povezave: 1
Dostop: (0644 / -rw-r - r--) Uid: (1000 / ubuntu) Gid: (1000 / ubuntu)
Dostop: 2021-03-06 16: 59: 45.000000000 +0000
Spremeni: 2021-03-06 16: 57: 59.000000000 +0000
Sprememba: 2021-03-06 17: 02: 43.000000000 +0000

Kako posodobiti časovne žige

The dotik ukaz spremeni čas spreminjanja in dostopa do datoteke. Prav tako je priročen način ustvarjanja prazne datoteke, kar bo storil, če datoteka še ne obstaja:

dotaknite se tmp

Privzeto nastavi mtime in atime na trenutni čas. S tipko lahko nastavite drugačen čas -t zastava:

dotik -t 202103061200 tmp

S tipko lahko nastavite tudi samo mtime ali atime -m in -a zastavice:

dotik -t 202103061300 -m tmp

Upoštevajte, da se ctime vedno posodobi, ko nastavimo čas ali mtime.

Kako najti datoteke na podlagi časovnih žigov

The najti ukaz je drugo orodje, ki deluje na časovne žige. Datoteke lahko filtrira glede na atime, ctime ali mtime. Na primer:

najti. -amin 15

bo našel datoteke, dostopne pred natanko 15 minutami, medtem ko:

najti. -mtime -2

bo našel datoteke, spremenjene v zadnjih dveh dneh.

Linux trikrat sledi vsaki datoteki

Najpogostejši referenčni časovni žig datoteke je mtime. To je na primer datum in čas, ki ju prikazuje seznam datotek. Lahko pa sta uporabna tudi druga dva časovna žiga, pod pogojem, da razumete, na kaj se nanašata. Zlasti ne pozabite, da ctime predstavlja spremembe čas, ne ustvarjanje čas.

Ukazi, kot sta touch in stat, so uporabni člani orodjarne ukazne vrstice Linux. Ti ukazi bodo izboljšali vaš potek dela v Linuxu, saj vam bodo omogočili hitro ustvarjanje novih datotek.

E-naslov
Linux Chess Sheet Reference Commands

Ta preprosta goljufiva lista vam bo v kratkem pomagala, da se privoščite terminalu ukazne vrstice Linux.

Sorodne teme
  • Linux
  • Upravljanje datotek
  • Linux Distro
O avtorju
Bobby Jack (33 objavljenih člankov)

Bobby je tehnološki navdušenec, ki je več kot dve desetletji delal kot razvijalec programske opreme. Navdušen je nad igranjem iger, dela kot urednik mnenj pri reviji Switch Player in je poglobljen v vse vidike spletnega založništva in spletnega razvoja.

Več od Bobbyja Jacka

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, preglede, brezplačne e-knjige in ekskluzivne ponudbe!

Še en korak…!

Potrdite svoj e-poštni naslov v e-poštnem sporočilu, ki smo vam ga pravkar poslali.

.