Opret nye tomme filer eller opdater tidsstempler for eksisterende filer/mapper nemt ved at bruge 'touch'-kommandoen
Den vigtigste anvendelse af røre ved
kommandoen er at oprette filer uden indhold. At oprette tomme filer kan synes at være spild af systemets hukommelse, men der er en hake her. røre ved
kommandoen er til din rådighed, når du ønsker at oprette tidsstempler eller logfiler, mens du arbejder på et stort projekt, som kræver logføring og overvågning. Du kan blot oprette en tom fil vha røre ved
kommandoen, og filen vil have tids- og datostempel, da den blev oprettet. (I filoplysningerne og ikke som indholdet af filen).
Den anden vigtige brug af røre ved
kommandoen er at ændre adgangs- og ændringstiden for en fil. Hver fil/mappe har et unikt tidsstempel tilføjet. Det viser adgangs- og ændringstiden for filen/biblioteket. Men disse oplysninger kan nemt ændres ved hjælp af røre ved
kommando.
Lad os se brugen af røre ved
kommando i flere detaljer med selvforklarende eksempler.
Valgmuligheder brugt med røre ved
kommando
Der er forskellige muligheder tilgængelige for at blive brugt med røre ved
kommando.
Mulighed | Beskrivelse |
---|---|
-en | ændre adgangstidspunktet for filen |
-m | ændre den ændrede tid for filen |
-c | ændre adgangstidspunktet for filen uden at oprette en ny |
-r | brug en referencefil til at indstille tidsstempler for fil eller mappe |
-d | indstilling af det samme vilkårlige tidsstempel for adgang og ændringstid ved hjælp af menneskelig læsbar dato i frit format |
-t | oprette en fil på et bestemt tidspunkt |
Ved brug af røre ved
Kommando
Det røre ved
kommandoen kan bruges til at oprette tomme filer uden at bruge nogen mulighed. Følg eksemplerne nedenfor for at oprette enkelte såvel som flere tomme filer.
At oprette en tom fil
Du kan bruge røre ved
kommando uden mulighed for at oprette en enkelt tom fil.
Syntaks:
tryk på [filnavn]
Eksempel:
gaurav@ubuntu:~/workspace$ tryk på iift.txt
Her har jeg lavet en fil ved navn iift.txt vha røre ved
kommando. Brug ls
kommando for at se, om filen er oprettet.
gaurav@ubuntu:~/workspace$ ls iift.txt init1 init2 init3 init4
For at se filoplysningerne kan du bruge stat
kommando som følger.
gaurav@ubuntu:~/workspace$ stat iift.txt Fil: iift.txt Størrelse: 0 Blokke: 0 IO Blok: 4096 almindelig tom fil Enhed: 808h/2056d Inode: 1990385 Links: 1 Adgang: (0644/-rw-r --r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 10:18:43.318160860 +0530 Ændre: 2020-09-14 10:18:460.803 +18:453.803 Ændre: 2020-09-14 10:18:43.318160860 +0530 Fødsel: - gaurav@ubuntu:~/workspace$
At oprette flere tomme filer
Hvis du ønsker at oprette flere tomme filer på én gang, kan du bruge røre ved
kommando på følgende måde.
Syntaks:
tryk på [filnavn-1] [filnavn-2] [filnavn-3]
Eksempel:
gaurav@ubuntu:~/workspace$ touch log1.txt ssh.txt filemove.c gaurav@ubuntu:~/workspace$ ls -l total 36 -rw-r--r-- 1 gaurav gaurav 0. sep. 14 10:35 filemove .c -rw-r--r-- 1 gaurav gaurav 0 sep 14 10:18 iift.txt -rw-r--r-- 1 gaurav gaurav 0 sep 14 10:35 log1.txt -rw-r-- r-- 1 gaurav gaurav 0. september 14 10:35 ssh.txt
Her har jeg lavet tre filer 'log1.txt', 'ssh.txt' og 'filemove.c'. Disse har forskellige filtypenavne.
Du kan også oprette tomme filer i bulk på følgende måde.
Syntaks:
tryk på [filnavn]-{1..n}.txt
Eksempel:
Vi vil oprette 10 filer, dvs. sheldon_log-1.txt, sheldon_log-2.txt og så videre op til sheldon_log-10.txt
gaurav@ubuntu:~/workspace$ touch sheldon_log-{1..0}.txt gaurav@ubuntu:~/workspace$
gaurav@ubuntu:~/workspace$ ls filemove.c iift.txt sheldon_log-10.txt sheldon_log-2.txt sheldon_log-4.txt sheldon_log-6.txt sheldon_log-8.txt gsy.c log1.txt sheldon_log-1. txt sheldon_log-3.txt sheldon_log-5.txt sheldon_log-7.txt sheldon_log-9.txt gaurav@ubuntu:~/workspace$
Ændre eller ændre adgangstid for fil eller bibliotek
Adgangstidsstemplet er sidste gang en fil blev læst. Når en bruger læser en fil, bliver adgangstidsstemplet for denne fil opdateret. Adgangstidsstempel angiver det tidspunkt, hvor filen sidst blev tilgået. Der er ingen ændringer, der finder sted med denne fil eller mappe, men den bliver kun refereret eller læst.
Ved brug af røre ved
kommando med mulighed -en
ændrer 'Adgangstiden' for en bestemt fil. Den nye 'Adgangstid' vil blive indstillet til den aktuelle dato og klokkeslæt. For at kontrollere den aktuelle adgangstid og ændringstid skal du bruge stat
kommando.
Ændring af fil
Syntaks:
tryk på -a [filnavn]
Eksempel:
Vi vil se den aktuelle adgangstid for filen, der skal ændres.
gaurav@ubuntu:~/workspace$ stat log1.txt Fil: log1.txt Størrelse: 0 Blokke: 0 IO Blok: 4096 almindelig tom fil Enhed: 808h/2056d Inode: 2001385 Links: 1 Adgang: (0644/-rw-r --r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-13 23:52:19.305416141 +0530 Ændre: 2020-09-13 23:52:050.207 + Ændring: 2020-09-13 23:52:19.305416141 +0530 Fødsel: - gaurav@ubuntu:~/workspace$
Ved brug af berør -a
for at ændre adgangstidspunktet for filen log1.txt til den aktuelle dato og klokkeslæt.
Produktion:
gaurav@ubuntu:~/workspace$ touch -a log1.txt gaurav@ubuntu:~/workspace$
gaurav@ubuntu:~/workspace$ stat log1.txt Fil: log1.txt Størrelse: 0 Blokke: 0 IO Blok: 4096 almindelig tom fil Enhed: 808h/2056d Inode: 2001385 Links: 1 Adgang: (0644/-rw-r --r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 10:59:24.972855176 +0530 Ændre: 2020-09-13 23:52:050.207 + Ændring: 2020-09-14 10:59:24.972855176 +0530 Fødsel: - gaurav@ubuntu:~/workspace$
Du kan se, at adgangstiden for filen log1.txt nu er ændret.
Ændring af bibliotek
berør -a
kan også bruges til at ændre adgangstiden for en mappe på samme måde som for en fil.
Syntaks:
tryk på -a [mappesti]
Eksempel:
gaurav@ubuntu:~$ stat ./workspace/tomcat Fil: ./workspace/tomcat Størrelse: 4096 Blokke: 8 IO Blok: 4096 bibliotek Enhed: 808h/2056d Inode: 2039942 Links: 3 Adgang: (07wx/drwx) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2018-03-30 11:18:28.912666800 +0530 Ændre: 2018-03-30 00:13:02.45219400 1-912666800 Ændre: 00:13:02.45219400 1-9 :18:28.912666800 +0530 Fødsel: -
Ved brug af berør -a
for at ændre adgangstiden for mappens tomcat.
gaurav@ubuntu:~$ tryk på -a ./workspace/tomcat
gaurav@ubuntu:~$ stat ./workspace/tomcat Fil: ./workspace/tomcat Størrelse: 4096 Blokke: 8 IO Blok: 4096 bibliotek Enhed: 808h/2056d Inode: 2039942 Links: 3 Adgang: (07wx/drwx) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 11:21:10.638538949 +0530 Ændre: 2018-03-30 00:13:02.45219400-1 Ændring: 9400 1-9 :21:10.638538949 +0530 Fødsel: - gaurav@ubuntu:~$
Her er adgangstiden for mappen 'tomcat' nu ændret til den aktuelle dato og klokkeslæt.
Skift ændringstidspunkt for fil/bibliotek
Ændringstid angiver sidste gang indholdet af en fil blev ændret. Et program eller en proces enten redigerede eller ændrede filen. "Ændret" betyder, at noget i filen er blevet ændret, slettet eller tilføjet nye data.
Ved brug af røre ved
kommando sammen med muligheden -m
ændrer 'Ændringstid' for en fil eller en mappe. Følgende metoder kan implementeres for fil og mappe.
Til fil
touch -m [filnavn]
Eksempel:
For det første bruger stat
kommando for at vise ændringstiden for filen.
gaurav@ubuntu:~/workspace$ stat iift.txt Fil: iift.txt Størrelse: 66 Blokke: 8 IO Blok: 4096 almindelig fil Enhed: 808h/2056d Inode: 1990385 Links: 1 Adgang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 11:33:36.927262587 +0530 Ændre: 2020-09-12 08:33:290.3019 + Change: 0201.301 -09-12 08:33:28.339190370 +0530
Brug nu røre -m
kommando for at ændre ændringstiden.
gaurav@ubuntu:~/workspace$ touch -m iift.txt
gaurav@ubuntu:~/workspace$ stat iift.txt Fil: iift.txt Størrelse: 66 Blokke: 8 IO Blok: 4096 almindelig fil Enhed: 808h/2056d Inode: 1990385 Links: 1 Adgang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 11:33:36.927262587 +0530 Ændre: 2020-09-14 11:34:324.5019 + 027262587 -09-14 11:34:34.719723531 +0530 Fødsel: - gaurav@ubuntu:~/workspace$
Filens 'Ændringstid' iift.txt
er nu ændret til den aktuelle dato og klokkeslæt.
Til Directory
touch -m [directory_path] ELLER [directory_name]
Eksempel:
Vi vil ændre ændringstiden for mappen med navnet 'tomcat' ved hjælp af røre -m
kommando. Lad os finde ud af dens nuværende 'Ændringstid' ved hjælp af stat
kommando.
gaurav@ubuntu:~/workspace$ stat tomcat Fil: tomcat Størrelse: 4096 Blokke: 8 IO Blok: 4096 bibliotek Enhed: 808h/2056d Inode: 2039942 Links: 3 Adgang: (0775/drwxrwxr/ ( 1 U00id/gaurav) ) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 11:21:10.638538949 +0530 Ændr: 2019-07-12 11:43:22.482485281 +0538538949 +0530 Ændre: 2019-07-12 11:43:22.482485281 +0538538949: +0538538949: +0530 Ændre: 2019-07-12 11:43:22.482485281 +0538538949: +0538538949: 2019-07-12 11:43:22.482485281 +0538538949: +0538538949: 0740119-2019-07-12 Fødsel: -
Produktion:
gaurav@ubuntu:~/workspace$ touch -m tomcat
gaurav@ubuntu:~/workspace$ stat tomcat Fil: tomcat Størrelse: 4096 Blokke: 8 IO Blok: 4096 bibliotek Enhed: 808h/2056d Inode: 2039942 Links: 3 Adgang: (0775/drwxrwxr/ ( 1 U00id/gaurav) ) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 11:21:10.638538949 +0530 Ændr: 2020-09-14 11:43:22.482485281 +0530 Ændring: 0920-5240: +0530 0940240: 0920-5240: 0941240-140240 Fødsel: - gaurav@ubuntu:~/workspace$
Her har jeg ændret Ændringstidsstemplet for mappen 'tomcat'.
Ændring af adgangstid uden at oprette ny fil
røre ved
kommando, når den køres, opretter en ny tom fil. Men der kan forekomme nogle tilfælde, hvor filen allerede er oprettet, og du bare vil ændre adgangstiden for den fil uden at oprette en ny.
I denne situation kan du bruge røre ved
kommando med -c
mulighed, som undgår at oprette en ny fil og stadig giver dig mulighed for at ændre Access-tidsstemplet.
Syntaks:
tryk på -c [filnavn]
Eksempel:
gaurav@ubuntu:~/workspace$ touch -c iift.txt gaurav@ubuntu:~/workspace$ ls demo gsy.c log1.txt sheldon_log-1.txt sheldon_log-3.txt sheldon_log-5.txt sheldon_log-7.txt sheldon_log-9.txt filemove.c iift.txt sheldon_log-10.txt sheldon_log-2.txt sheldon_log-4.txt sheldon_log-6.txt sheldon_log-8.txt tomcat gaurav@ubuntu:~/workspace$
På samme måde kan du ændre adgangstiden for den allerede eksisterende mappe. Du kan bruge følgende metode til at gøre det.
Eksempel:
Viser det aktuelle adgangstidsstempel for mappens tomcat.
gaurav@ubuntu:~/workspace$ stat tomcat Fil: tomcat Størrelse: 4096 Blokke: 8 IO Blok: 4096 bibliotek Enhed: 808h/2056d Inode: 2039942 Links: 3 Adgang: (0775/drwxrwxr/ ( 1 U00id/gaurav) ) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 11:21:10.638538949 +0530 Ændr: 2020-09-14 11:43:22.482485281 +0530 Ændring: 0920-5240: +0530 0940240: 0920-5240: 0941240-140240 Fødsel: - gaurav@ubuntu:~/workspace$
gaurav@ubuntu:~/workspace$ touch -c tomcat
Her har jeg ændret adgangstiden for den allerede eksisterende mappe 'tomcat'.
Produktion:
gaurav@ubuntu:~/workspace$ stat tomcat Fil: tomcat Størrelse: 4096 Blokke: 8 IO Blok: 4096 bibliotek Enhed: 808h/2056d Inode: 2039942 Links: 3 Adgang: (0775/drwxrwxr/ ( 1 U00id/gaurav) ) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 20:18:52.625031128 +0530 Ændre: 2020-09-14 20:18:52.625031128 +0530 Ændring: 0921240: +0530 201240-202015: 0921240-2020:2015 Fødsel: - gaurav@ubuntu:~/workspace$
Krydstjek output:
gaurav@ubuntu:~/workspace$ touch -c temp.cpp gaurav@ubuntu:~/workspace$ ls temp.cpp ls: kan ikke få adgang til 'temp.cpp': Ingen sådan fil eller mappe gaurav@ubuntu:~/workspace$
Her prøvede jeg at bruge berør -c
med temp.cpp
. Denne fil findes ikke. Derfor kan vi sige, at vha røre ved
med mulighed -c
undgår at oprette nye tomme filer og ændrer kun tidsstemplet for den eksisterende fil.
Ændring af adgangs- og ændringstidsstempel til en bestemt dato og klokkeslæt
I de foregående blokke skal du have observeret, at når vi bruger røre ved
kommandoen for at ændre tidsstemplerne, ændres den til det aktuelle klokkeslæt og dato.
Men der kan være nogle tilfælde, hvor du muligvis skal bruge en tilpasset tid og dato. Ved brug af røre ved
kommando med -c
og -t
muligheder kan tjene formålet.
Eksempel:
Jeg ændrer tidsstemplet for adgang og ændring i filen iift.txt til et tilpasset tidspunkt og dato.
gaurav@ubuntu:~/workspace$ stat iift.txt Fil: iift.txt Størrelse: 66 Blokke: 8 IO Blok: 4096 almindelig fil Enhed: 808h/2056d Inode: 1990385 Links: 1 Adgang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 12:04:07.091786565 +0530 Ændre: 2020-09-14 12:04:07.5097 + Ændring: 07.509 -09-14 12:04:07.091786565 +0530 Fødsel: -
Dato og klokkeslæt kan angives i formatet: {CCYY}MMDDhhmm.ss
Parameter | Beskrivelse |
CC | De første to cifre i et år |
ÅÅ | Andet to cifre i et år |
MM | Årets måned (01-12) |
DD | Månedens dag (01-31) |
hh | Time på dagen (00-23) |
mm | Minutters minutter (00-59) |
Jeg bruger datostemplet som 203011051820 (dvs. 5. november 2030, kl. 18.20).
gaurav@ubuntu:~/workspace$ touch -c -t 203011051820 iift.txt
Denne kommando ændrer tidsstemplet for Access og Modify for filen iift.txt som følger.
gaurav@ubuntu:~/workspace$ stat iift.txt Fil: iift.txt Størrelse: 66 Blokke: 8 IO Blok: 4096 almindelig fil Enhed: 808h/2056d Inode: 1990385 Links: 1 Adgang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2030-11-05 18:20:00.000000000 +0530 Ændre: 2030-11-05 18:20:00.000 + Change: 00.000 + 3 -09-14 20:39:55.641781140 +0530 Fødsel: - gaurav@ubuntu:~/workspace$
Brug af en referencefil til at indstille tidsstempel
røre ved
kommando kan også bruges med muligheden -r
at bruge tidsstemplet for en referencefil efter eget valg på din nuværende fil.
Syntaks:
touch -r [reference_fil] [faktisk_fil]
Eksempel:
Vi vil bruge gsy.c
fil som referencefil. Så tidsstempler af gsy.c
vil blive brugt til filen iift.txt
. Lad os først tjekke de aktuelle tidsstempler for begge disse filer stat
kommando.
gaurav@ubuntu:~/workspace$ stat gsy.c Fil: gsy.c Størrelse: 0 Blokke: 0 IO Blok: 4096 almindelig tom fil Enhed: 808h/2056d Inode: 2001385 Links: 1 Adgang: (0644/-rw-r --r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 10:59:24.972855176 +0530 Ændre: 2020-09-13 23:52:050.207 + Ændring: 2020-09-14 10:59:24.972855176 +0530 Fødsel: - gaurav@ubuntu:~/workspace$ stat iift.txt Fil: iift.txt Størrelse: 66 Blokke: 8 IO Blok: 4096 almindelig fil Enhed: 80506d/2de : 1990385 Links: 1 Adgang: (0644/-rw-r--r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2025-10-19 18:20:00.000000000 Ændr: +05 2025-10-19 18:20:00.000000000 +0530 Ændring: 2020-09-14 20:39:55.641781140 +0530
Brug af kommandoen berør -r
nu.
gaurav@ubuntu:~/workspace$ touch -r gsy.c iift.txt
Produktion:
gaurav@ubuntu:~/workspace$ stat iift.txt Fil: iift.txt Størrelse: 66 Blokke: 8 IO Blok: 4096 almindelig fil Enhed: 808h/2056d Inode: 1990385 Links: 1 Adgang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Adgang: 2020-09-14 10:59:24.972855176 +0530 Ændr: 2020-09-13 23:52:00.207 + Ændr: 50.207 + -09-14 21:04:27.640026328 +0530 Fødsel: - gaurav@ubuntu:~/workspace$
Fra outputtet kan vi se, at tidsstemplerne for filen iift.txt
har ændret. De nye tidsstempler ligner nu dem i referencefilen gsy.c
Konklusion
I denne tutorial lærte vi om røre ved
kommando og forskellige tilgængelige muligheder med den for at oprette nye tomme filer og ændre tidsstempler for eksisterende filer på forskellige måder.