„Linux“ operacinė sistema stebi tris laiko žymes kiekvienam failui jūsų sistemoje. Šios laiko žymos leidžia jums sužinoti, kada failas buvo paskutinį kartą atnaujintas. Bet ką jie visi reiškia? Ir kaip sužinoti šiuos kartus bylai? Ar yra skirtumas, kai kalbama apie katalogus?

Laiko, ctime ir mtime supratimas gali atsakyti į visus šiuos klausimus. Tai yra trys laiko žymos, kurias stebi „Unix“ failų sistemos. Jei kada reikia sužinoti išsamią informaciją apie tai, kas ir kada pasikeitė, skaitykite toliau.

Kokios yra trys „Unix“ laiko žymos?

Kiekviename faile yra trys laiko žymės. „Linux“ juos saugo „Unix“ laiko formatas kuris matuoja sekundes nuo epochos. Trys laiko žymės paprastai vadinamos atime, ctime ir mtime.

mtime yra labiausiai paplitęs ir dažnai naudingiausias. Tai reiškia modifikuotas laikas. Tai laikas, kai failo turinys paskutinį kartą buvo įrašytas į diską.

Šiek tiek skiriasi ctime kuris reiškia pakeisti laiką. Ši laiko žymė stebi metaduomenų pakeitimus, pvz., Nuosavybės teises ir leidimus. Tai apima failo pervadinimą - bent jau įprastose šiuolaikinėse „Linux“ operacinėse sistemose. Tačiau jis taip pat atnaujinamas, kai keičiasi failo turinys, todėl jis visada yra toks pat atnaujintas kaip ir „mtime“.

Trečioji laiko žymė yra laikas, kuriame saugomas paskutinis kartas, kai kas nors pasiekė failą.

Kaip laiko žymės taikomos katalogams

„Linux“ katalogas iš esmės yra to katalogo failų sąrašas. Taigi sukūrus failą kataloge bus atnaujintas to katalogo laikas. Failų sąrašas kataloge, naudojant ls Pavyzdžiui, komanda atnaujina prieigos laiką. Kaip ir failo atveju, pakeitus katalogo teises ar pavadinimą atnaujinamas jo ctime.

Ką apie kūrimo laiką?

Tai gali jus nustebinti sužinoję, kad „Linux“ paprasčiausiai neseka kūrimo laiko. Iš pradžių galite tai manyti ctime reiškia kūrybos laiką. Jūs taip pat galite galvoti apie tai kaip apie labai naudingą dalyką, kad galėtumėte tai sužinoti.

Daugelis programų kiekvieną kartą išsaugo failus kurdami juos nuo nulio. Dėl to kūrinio naudojimo laikas būtų klaidinantis.

Kaip peržiūrėti skirtingas laiko žymes

Paprasčiausias būdas gauti laiko žymos informaciją yra ls komandą. Pagal numatytąjį ilgą formatą pateikiama išsami „mtime“ informacija:

$ data
Šeštadienio kovo 6 d. 16:57:01 GMT 2021 m
$ echo "labas, pasauli"> tmp
$ ls -l tmp.txt
-rw-r - r-- 1 ubuntu ubuntu 13 2021-03-06 16:57 tmp

Vietoj to galite rodyti laiką naudodami -u vėliava:

$ data
Šeštadienio kovo 6 d. 16:59:33 GMT 2021 m
$ katės tmp
Labas pasauli
$ 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

Paskutinė eilutė patvirtina, kad šio failo mtime skiriasi nuo laiko. Galiausiai naudokite -c vėliava, kad galėtumėte peržiūrėti ctime:

$ data
Šeštadienis, kovo 6 d. 17:02:34 GMT 2021 m
$ 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

Šį kartą mes patvirtiname, kad visi trys kartai yra skirtingi ir teisingi: mes pakeitėme, tada pasiekėme, tada pakeitėme failą ta tvarka.

Alternatyva ls yra stat komandą. Ši komanda rodo žemo lygio informaciją iš failo inodo. Tai leidžia lengviau patikrinti visus tris kartus vienu metu. Tai taip pat apeina nesuprastųjų problemą -u vėliava. Štai to paties failo išvesties pavyzdys:

$ stat tmp2
Failas: „tmp2“
Dydis: 13 blokų: 8 IO blokas: 4096 įprastas failas
Įrenginys: 801h / 2049d Inode: 327688 Nuorodos: 1
Prieiga: (0644 / -rw-r - r--) Uid: (1000 / ubuntu) Gid: (1000 / ubuntu)
Prieiga: 2021-03-06 16: 59: 45.000000000 +0000
Keisti: 2021-03-06 16: 57: 59.000000000 +0000
Keitimas: 2021-03-06 17: 02: 43.000000000 +0000

Kaip atnaujinti laiko žymes

paliesti komanda keičia failo modifikavimo ir prieigos laiką. Tai taip pat yra patogus būdas sukurti tuščią failą, kurį atliksite, jei failo dar nėra:

palieskite tmp

Pagal numatytuosius nustatymus jis nustatys dabartinį laiką ir laiką. Galite nustatyti kitą laiką naudodami -t vėliava:

prisilietimo -t 202103061200 tmp

Taip pat galite nustatyti tik „mtime“ arba „time“ -m ir -a vėliavos:

prisilietimas -t 202103061300 -m tmp

Atminkite, kad „ctime“ visada atnaujinama, kai nustatome laiką arba „mtime“.

Kaip rasti failus pagal laiko žymes

rasti komanda yra dar viena priemonė, veikianti laiko žymes. Jis gali filtruoti failus pagal atime, ctime ar mtime. Pavyzdžiui:

rasti. -15 min

ras failus, prieinamus lygiai prieš 15 minučių, o:

rasti. -valanda -2

ras per paskutines dvi dienas pakeistus failus.

„Linux“ tris kartus seka kiekvieną failą

Dažniausiai nurodoma failo laiko žymė yra „mtime“. Tai yra data ir laikas, kurį rodo, pavyzdžiui, failų sąrašas. Tačiau kitos dvi laiko žymės taip pat gali būti naudingos, jei suprantate, ką jie nurodo. Visada atminkite, kad „ctime“ reiškia pakeisti laikas, o ne kūryba laikas.

Tokios komandos kaip „touch“ ir „stat“ yra naudingos „Linux“ komandinės eilutės įrankių grupės narės. Šios komandos pagerins jūsų „Linux“ darbo eigą, leisdamos greitai kurti naujus failus.

El
„Linux Commands Reference Cheat Sheet“

Šis paprastas apgaulės lapas padės jums greitai naudotis „Linux“ komandinės eilutės terminalu.

Susijusios temos
  • „Linux“
  • Failų tvarkymas
  • „Linux Distro“
Apie autorių
Bobis Džekas (Paskelbti 33 straipsniai)

Bobis yra technologijų entuziastas, kuris beveik du dešimtmečius dirbo programinės įrangos kūrėju. Jis aistringai žaidžia, dirba „Review Player“ žurnalo apžvalgų redaktoriumi ir yra pasinėręs į visus internetinės leidybos ir interneto kūrimo aspektus.

Daugiau iš Bobby Jacko

Prenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kuriame rasite techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!

Dar vienas žingsnis…!

Prašome patvirtinti savo el. Pašto adresą el. Laiške, kurį jums ką tik išsiuntėme.

.