Touch Command gebruiken in Linux

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.

OptieBeschrijving
-eentoegangstijd van het bestand wijzigen
-mde gewijzigde tijd van het bestand wijzigen
-Cde toegangstijd van het bestand wijzigen zonder een nieuwe aan te maken
-Rgebruik een referentiebestand voor het instellen van de tijdstempels van het bestand of de map
-Ddezelfde willekeurige tijdstempel instellen voor toegangs- en wijzigingstijd met behulp van een door mensen leesbare datum in vrije indeling
-tmaak 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

ParameterBeschrijving
CCEerste twee cijfers van een jaar
YYTweede twee cijfers van een jaar
MMMaand van het jaar (01-12)
DDDag van de maand (01-31)
hhUur van de dag (00-23)
mmMinuten 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.