Maak eenvoudig nieuwe lege bestanden of werk tijdstempels van bestaande bestanden/mappen bij met de opdracht 'aanraken'
De belangrijkste toepassing van de aanraken
opdracht is om bestanden te maken zonder enige inhoud. Het maken van lege bestanden lijkt misschien een verspilling van het systeemgeheugen, maar hier zit een addertje onder het gras. aanraken
commando komt tot uw beschikking wanneer u tijdstempels of logboeken wilt maken terwijl u aan een groot project werkt dat het bijhouden en bewaken van logboeken vereist. U kunt eenvoudig een leeg bestand maken met aanraken
commando en het bestand zal de tijd- en datumstempel hebben toen het werd gemaakt. (In de bestandsinformatie en niet als de inhoud van het bestand).
Het tweede belangrijke gebruik van de aanraken
opdracht is om de toegangs- en wijzigingstijd voor een bestand te wijzigen. Aan elk bestand/map is een unieke tijdstempel toegevoegd. Het toont de toegangs- en wijzigingstijd van het bestand/de map. Maar deze informatie kan eenvoudig worden gewijzigd met behulp van de aanraken
opdracht.
Laten we eens kijken naar het gebruik van aanraken
commando in meer detail met zelfverklarende voorbeelden.
Opties gebruikt met aanraken
opdracht
Er zijn verschillende opties beschikbaar om te gebruiken met de aanraken
opdracht.
Optie | Beschrijving |
---|---|
-een | toegangstijd van het bestand wijzigen |
-m | de gewijzigde tijd van het bestand wijzigen |
-C | de toegangstijd van het bestand wijzigen zonder een nieuwe aan te maken |
-R | gebruik een referentiebestand voor het instellen van de tijdstempels van het bestand of de map |
-D | dezelfde willekeurige tijdstempel instellen voor toegangs- en wijzigingstijd met behulp van een door mensen leesbare datum in vrije indeling |
-t | maak een bestand met een opgegeven tijd |
Gebruik makend van aanraken
Opdracht
De aanraken
commando kan worden gebruikt om lege bestanden te maken zonder enige optie te gebruiken. Volg de onderstaande voorbeelden om zowel enkele als meerdere lege bestanden te maken.
Een leeg bestand maken
U kunt de aanraken
commando zonder enige optie om een enkel leeg bestand te maken.
Syntaxis:
raak [bestandsnaam] aan
Voorbeeld:
gaurav@ubuntu:~/workspace$ tik op iift.txt
Hier heb ik een bestand met de naam iift.txt gemaakt met behulp van aanraken
opdracht. Gebruik de ls
commando om te zien of het bestand is gemaakt.
gaurav@ubuntu:~/workspace$ ls iift.txt init1 init2 init3 init4
Om de bestandsinformatie te zien, kunt u de stat
commando als volgt.
gaurav@ubuntu:~/workspace$ stat iift.txt Bestand: iift.txt Grootte: 0 Blokken: 0 IO Blok: 4096 normaal leeg bestand Apparaat: 808h/2056d Inode: 1990385 Links: 1 Toegang: (0644/-rw-r --r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 10:18:43.318160860 +0530 Wijzigen: 2020-09-14 10:18:43.318160860 +0530 Wijzigen: 2020-09-14 10:18:43.318160860 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
Meerdere lege bestanden maken
Als u meerdere lege bestanden tegelijk wilt maken, kunt u de aanraken
commando op de volgende manier.
Syntaxis:
raak [bestandsnaam-1] [bestandsnaam-2] [bestandsnaam-3] aan
Voorbeeld:
gaurav@ubuntu:~/workspace$ touch log1.txt ssh.txt filemove.c gaurav@ubuntu:~/workspace$ ls -l totaal 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 Sep 14 10:35 ssh.txt
Hier heb ik drie bestanden 'log1.txt', 'ssh.txt' en 'filemove.c' gemaakt. Deze hebben verschillende bestandsextensies.
U kunt op de volgende manier ook lege bestanden in bulk maken.
Syntaxis:
raak [bestandsnaam]-{1..n}.txt . aan
Voorbeeld:
We zullen 10 bestanden maken, nl. sheldon_log-1.txt, sheldon_log-2.txt enzovoort tot 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-1.sheldon txt sheldon_log-3.txt sheldon_log-5.txt sheldon_log-7.txt sheldon_log-9.txt gaurav@ubuntu:~/workspace$
Toegangstijd van bestand of map wijzigen of wijzigen
De toegangstijdstempel is de laatste keer dat een bestand is gelezen. Telkens wanneer een gebruiker een bestand leest, wordt de toegangstijdstempel voor dat bestand bijgewerkt. Toegangstijdstempel geeft de tijd aan waarop het bestand voor het laatst is geopend. Er vindt geen wijziging plaats met dit bestand of deze map, maar er wordt alleen naar verwezen of gelezen.
Gebruik makend van aanraken
commando met optie -een
wijzigt de 'Toegangstijd' van een bepaald bestand. De nieuwe 'Toegangstijd' wordt ingesteld op de huidige datum en tijd. Om de huidige toegangstijd en wijzigingstijd te controleren, gebruikt u de stat
opdracht.
Bestand wijzigen
Syntaxis:
raak -a [bestandsnaam] aan
Voorbeeld:
We zullen de huidige toegangstijd van het te wijzigen bestand zien.
gaurav@ubuntu:~/workspace$ stat log1.txt Bestand: log1.txt Grootte: 0 Blokken: 0 IO Blok: 4096 normaal leeg bestand Apparaat: 808h/2056d Inode: 2001385 Links: 1 Toegang: (0644/-rw-r --r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-13 23:52:19.305416141 +0530 Wijzigen: 2020-09-13 23:52:00.215090207 +0530 Wijzigen: 2020-09-13 23:52:19.305416141 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
Gebruik makend van raak -a . aan
om de toegangstijd van het bestand log1.txt te wijzigen in de huidige datum en tijd.
Uitgang:
gaurav@ubuntu:~/workspace$ touch -a log1.txt gaurav@ubuntu:~/workspace$
gaurav@ubuntu:~/workspace$ stat log1.txt Bestand: log1.txt Grootte: 0 Blokken: 0 IO Blok: 4096 normaal leeg bestand Apparaat: 808h/2056d Inode: 2001385 Links: 1 Toegang: (0644/-rw-r --r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 10:59:24.972855176 +0530 Wijzigen: 2020-09-13 23:52:00.215090207 +0530 Wijzigen: 2020-09-14 10:59:24.972855176 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
U kunt zien dat de toegangstijd van het bestand log1.txt nu is gewijzigd.
Directory wijzigen
raak -a . aan
kan ook worden gebruikt om de toegangstijd van een map op dezelfde manier te wijzigen als voor een bestand.
Syntaxis:
raak -a [directory_path] aan
Voorbeeld:
gaurav@ubuntu:~$ stat ./workspace/tomcat Bestand: ./workspace/tomcat Grootte: 4096 Blokken: 8 IO Blok: 4096 directory Apparaat: 808h/2056d Inode: 2039942 Links: 3 Toegang: (0775/drwxrwxr-x) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2018-03-30 11:18:28.912666800 +0530 Wijzigen: 2018-03-30 00:13:02.452194000 +0530 Wijzigen: 2020-09-14 11 :18:28.912666800 +0530 Geboorte: -
Gebruik makend van raak -a . aan
om de toegangstijd voor de directory kater te wijzigen.
gaurav@ubuntu:~$ touch -a ./workspace/tomcat
gaurav@ubuntu:~$ stat ./workspace/tomcat Bestand: ./workspace/tomcat Grootte: 4096 Blokken: 8 IO Blok: 4096 directory Apparaat: 808h/2056d Inode: 2039942 Links: 3 Toegang: (0775/drwxrwxr-x) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 11:21:10.638538949 +0530 Wijzigen: 2018-03-30 00:13:02.452194000 +0530 Wijzigen: 2020-09-14 11 :21:10.638538949 +0530 Geboorte: - gaurav@ubuntu:~$
Hier wordt nu de toegangstijd van de directory 'kater' gewijzigd in de huidige datum en tijd.
Wijzigingstijd van bestand/directory
Wijzigingstijd betekent de laatste keer dat de inhoud van een bestand is gewijzigd. Een programma of proces heeft het bestand bewerkt of gewijzigd. "Gewijzigd" betekent dat iets in het bestand is gewijzigd, verwijderd of nieuwe gegevens zijn toegevoegd.
Gebruik makend van aanraken
commando samen met de optie -m
wijzigt de 'Modificatietijd' van een bestand of een map. De volgende methoden kunnen worden ingezet voor bestand en directory.
Voor bestand
raak -m [bestandsnaam] aan
Voorbeeld:
Ten eerste, met behulp van stat
commando om de wijzigingstijd voor het bestand weer te geven.
gaurav@ubuntu:~/workspace$ stat iift.txt Bestand: iift.txt Grootte: 66 Blokken: 8 IO Blok: 4096 normaal bestand Apparaat: 808h/2056d Inode: 1990385 Links: 1 Toegang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 11:33:36.927262587 +0530 Wijzigen: 2020-09-12 08:33:28.339190370 +0530 Wijzigen: 2020 -09-12 08:33:28.339190370 +0530
Gebruik nu de raak -m aan
commando om de wijzigingstijd te wijzigen.
gaurav@ubuntu:~/workspace$ touch -m iift.txt
gaurav@ubuntu:~/workspace$ stat iift.txt Bestand: iift.txt Grootte: 66 Blokken: 8 IO Blok: 4096 normaal bestand Apparaat: 808h/2056d Inode: 1990385 Links: 1 Toegang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 11:33:36.927262587 +0530 Wijzigen: 2020-09-14 11:34:34.719723531 +0530 Wijzigen: 2020 -09-14 11:34:34.719723531 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
De ‘Modificatietijd’ van het bestand iift.txt
is nu gewijzigd in de huidige datum en tijd.
Voor directory
touch -m [directory_path] OF [directory_name]
Voorbeeld:
We zullen de wijzigingstijd van de map met de naam 'tomcat' wijzigen met behulp van de raak -m aan
opdracht. Laten we de huidige 'Modificatietijd' achterhalen met behulp van de stat
opdracht.
gaurav@ubuntu:~/workspace$ stat tomcat Bestand: tomcat Grootte: 4096 Blokken: 8 IO Blok: 4096 directory Apparaat: 808h/2056d Inode: 2039942 Links: 3 Toegang: (0775/drwxrwxr-x) Uid: ( 1000/ gaurav ) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 11:21:10.638538949 +0530 Wijzigen: 2019-07-12 11:43:22.482485281 +0530 Wijzigen: 2019-07-12 11:43:22.482485281 +0530 Geboorte: -
Uitgang:
gaurav@ubuntu:~/workspace$ touch -m kater
gaurav@ubuntu:~/workspace$ stat tomcat Bestand: tomcat Grootte: 4096 Blokken: 8 IO Blok: 4096 directory Apparaat: 808h/2056d Inode: 2039942 Links: 3 Toegang: (0775/drwxrwxr-x) Uid: ( 1000/ gaurav ) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 11:21:10.638538949 +0530 Wijzigen: 2020-09-14 11:43:22.482485281 +0530 Wijzigen: 2020-09-14 11:43:22.482485281 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
Hier heb ik het tijdstempel van de wijziging voor de map 'tomcat' gewijzigd.
Toegangstijd wijzigen zonder een nieuw bestand te maken
aanraken
commando wanneer het wordt uitgevoerd, maakt een nieuw leeg bestand aan. Maar er kunnen zich gevallen voordoen waarin het bestand al is gemaakt en u alleen de toegangstijd van dat bestand wilt wijzigen zonder een nieuw bestand te maken.
In deze situatie kunt u aanraken
commando met de -C
optie die het maken van een nieuw bestand vermijdt en u toch de Access-tijdstempel kunt wijzigen.
Syntaxis:
raak -c [bestandsnaam] aan
Voorbeeld:
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$
Op dezelfde manier kunt u de toegangstijd van de reeds bestaande directory wijzigen. U kunt hiervoor de volgende methode gebruiken.
Voorbeeld:
De huidige toegangstijdstempel van de directory-kater weergeven.
gaurav@ubuntu:~/workspace$ stat tomcat Bestand: tomcat Grootte: 4096 Blokken: 8 IO Blok: 4096 directory Apparaat: 808h/2056d Inode: 2039942 Links: 3 Toegang: (0775/drwxrwxr-x) Uid: ( 1000/ gaurav ) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 11:21:10.638538949 +0530 Wijzigen: 2020-09-14 11:43:22.482485281 +0530 Wijzigen: 2020-09-14 11:43:22.482485281 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
gaurav@ubuntu:~/workspace$ touch -c kater
Hier heb ik de toegangstijd van de reeds bestaande map 'tomcat' gewijzigd.
Uitgang:
gaurav@ubuntu:~/workspace$ stat tomcat Bestand: tomcat Grootte: 4096 Blokken: 8 IO Blok: 4096 directory Apparaat: 808h/2056d Inode: 2039942 Links: 3 Toegang: (0775/drwxrwxr-x) Uid: ( 1000/ gaurav ) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 20:18:52.625031128 +0530 Wijzigen: 2020-09-14 20:18:52.625031128 +0530 Wijzigen: 2020-09-14 20:18:52.625031128 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
Kruiscontrole van de uitvoer:
gaurav@ubuntu:~/workspace$ touch -c temp.cpp gaurav@ubuntu:~/workspace$ ls temp.cpp ls: kan 'temp.cpp' niet openen: geen dergelijk bestand of map gaurav@ubuntu:~/workspace$
Hier heb ik geprobeerd te gebruiken raak -c . aan
met temp.cpp
. Dit bestand bestaat niet. Daarom kunnen we zeggen dat met behulp van aanraken
met optie -C
vermijdt het maken van nieuwe lege bestanden en wijzigt alleen de tijdstempel voor het bestaande bestand.
Toegangs- en wijzigingstijdstempel wijzigen in een specifieke datum en tijd
In de vorige blokken moet je hebben opgemerkt dat wanneer we de aanraken
commando om de tijdstempels te wijzigen, wordt het gewijzigd in de huidige tijd en datum.
Maar het kan voorkomen dat u een aangepaste tijd en datum moet gebruiken. Gebruik makend van aanraken
commando met -C
en -t
opties kunnen het doel dienen.
Voorbeeld:
Ik zal de toegangs- en wijzigingstijdstempel in het bestand wijzigen iift.txt naar een aangepaste tijd en datum.
gaurav@ubuntu:~/workspace$ stat iift.txt Bestand: iift.txt Grootte: 66 Blokken: 8 IO Blok: 4096 normaal bestand Apparaat: 808h/2056d Inode: 1990385 Links: 1 Toegang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 12:04:07.091786565 +0530 Wijzigen: 2020-09-14 12:04:07.091786565 +0530 Wijzigen: 2020 -09-14 12:04:07.091786565 +0530 Geboorte: -
Datum en tijd kunnen worden opgegeven in het formaat: {CCYY}MMDDuumm.ss
Parameter | Beschrijving |
CC | Eerste twee cijfers van een jaar |
YY | Tweede twee cijfers van een jaar |
MM | Maand van het jaar (01-12) |
DD | Dag van de maand (01-31) |
hh | Uur van de dag (00-23) |
mm | Minuten van het uur (00-59) |
Ik gebruik de datumstempel als 203011051820 (d.w.z. 5-november-2030, 18:20 uur).
gaurav@ubuntu:~/workspace$ touch -c -t 203011051820 iift.txt
Deze opdracht zal de toegangs- en wijzigingstijdstempel voor het bestand wijzigen iift.txt als volgt.
gaurav@ubuntu:~/workspace$ stat iift.txt Bestand: iift.txt Grootte: 66 Blokken: 8 IO Blok: 4096 normaal bestand Apparaat: 808h/2056d Inode: 1990385 Links: 1 Toegang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2030-11-05 18:20:00.000000000 +0530 Wijzigen: 2030-11-05 18:20:00.000000000 +0530 Wijzigen: 2020 -09-14 20:39:55.641781140 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
Een referentiebestand gebruiken om een tijdstempel in te stellen
aanraken
commando kan ook worden gebruikt met de optie -R
om de tijdstempel van een referentiebestand naar keuze op uw huidige bestand te gebruiken.
Syntaxis:
touch -r [referentiebestand] [werkelijk_bestand]
Voorbeeld:
We zullen gebruiken gsy.c
bestand als referentiebestand. Dus de tijdstempels van gsy.c
zal worden gebruikt voor het bestand iift.txt
. Laten we eerst de huidige tijdstempels van beide bestanden controleren met stat
opdracht.
gaurav@ubuntu:~/workspace$ stat gsy.c Bestand: gsy.c Grootte: 0 Blokken: 0 IO Blok: 4096 normaal leeg bestand Apparaat: 808h/2056d Inode: 2001385 Links: 1 Toegang: (0644/-rw-r --r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 10:59:24.972855176 +0530 Wijzigen: 2020-09-13 23:52:00.215090207 +0530 Wijzigen: 2020-09-14 10:59:24.972855176 +0530 Geboorte: - gaurav@ubuntu:~/workspace$ stat iift.txt Bestand: iift.txt Grootte: 66 Blokken: 8 IO Blok: 4096 regulier bestand Apparaat: 808h/2056d Inode : 1990385 Links: 1 Toegang: (0644/-rw-r--r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2025-10-19 18:20:00.000000000 +0530 Wijzigen: 2025-10-19 18:20:00.000000000 +0530 Wijziging: 2020-09-14 20:39:55.641781140 +0530
Het commando gebruiken raak -r . aan
nu.
gaurav@ubuntu:~/workspace$ touch -r gsy.c iift.txt
Uitgang:
gaurav@ubuntu:~/workspace$ stat iift.txt Bestand: iift.txt Grootte: 66 Blokken: 8 IO Blok: 4096 normaal bestand Apparaat: 808h/2056d Inode: 1990385 Links: 1 Toegang: (0644/-rw-r- -r--) Uid: ( 1000/ gaurav) Gid: ( 1000/ gaurav) Toegang: 2020-09-14 10:59:24.972855176 +0530 Wijzigen: 2020-09-13 23:52:00.215090207 +0530 Wijzigen: 2020 -09-14 21:04:27.640026328 +0530 Geboorte: - gaurav@ubuntu:~/workspace$
Uit de uitvoer kunnen we zien dat de tijdstempels voor het bestand iift.txt
is veranderd. De nieuwe tijdstempels zijn nu vergelijkbaar met die van het referentiebestand gsy.c
Gevolgtrekking
In deze tutorial leerden we over de aanraken
commando en verschillende beschikbare opties om nieuwe lege bestanden te maken en de tijdstempels van bestaande bestanden op verschillende manieren te wijzigen.