Linux Touch command
Het touch commando kan gebruikt worden om de toegangs-/wijzigingstijdstempels van bestanden aan te passen. Het wordt vaker gebruikt om eigenlijk gewoon snel een leeg bestand te maken.
Dit bericht laat een aantal zeer eenvoudige en snelle voorbeelden zien van het gebruik van het touch commando om timestamps aan te passen of bestanden te maken.
Een leeg bestand maken
Om eenvoudig een leeg bestand te maken met het touch commando, gebruikt u de onderstaande syntaxis.
$ touch abc.txt
Als het bestand al bestaat, wordt de toegangstijd bijgewerkt.
Maak meerdere bestanden aan met touch
Om meerdere bestanden aan te maken, specificeert u hun namen samen, gescheiden door een spatie.
$ touch abc.txt cde.txt xyz.txt
Er worden heel veel bestanden gemaakt
Als u om de een of andere reden heel veel bestanden wilt maken, dan zijn commando’s als deze erg handig
# Create files with names A to Z$ touch {A..Z}# Create files with names 1 to 20$ touch {1..20}# Create files with extension$ touch {1..1000}.txt# Create 10K files$ touch {1..10}{1..1000}
En gebruik dan het ls commando om te zien wat er allemaal is gemaakt.
Vermijd het maken van nieuwe bestanden
Als u alleen de toegangstijd van een bestaand bestand wilt bijwerken, zonder het aan te maken, gebruik dan de ‘-c’ optie. Als het bestand bestaat, zal touch de toegangstijd bijwerken, anders zal het niets doen
$ touch -c hello.txt
Toegangstijd bestand wijzigen – ‘a’
Om alleen de toegangstijd van een bestand te wijzigen, gebruik de ‘-a’ optie met de bestandsnaam.
$ touch -a abc.txt
Om de toegangstijd te controleren gebruikt u het commando stat
$ stat a.txt File: ‘a.txt’ Size: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: 801h/2049d Inode: 5904730 Links: 1Access: (0664/-rw-rw-r--) Uid: ( 1000/enlightened) Gid: ( 1000/enlightened)Access: 2016-03-10 15:04:24.281533071 +0530Modify: 2016-03-10 15:00:16.117864128 +0530Change: 2016-03-10 15:04:24.281533071 +0530
De gewijzigde tijd wijzigen ‘-m’
Gebruik de optie ‘-m’ optie om de gewijzigde tijd van het bestand te wijzigen
$ touch -m a.txtThen check the file statistics with the stat command -$ stat a.txt File: ‘a.txt’ Size: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: 801h/2049d Inode: 5904730 Links: 1Access: (0664/-rw-rw-r--) Uid: ( 1000/enlightened) Gid: ( 1000/enlightened)Access: 2016-03-10 15:04:24.281533071 +0530Modify: 2016-03-10 15:05:03.409475551 +0530Change: 2016-03-10 15:05:03.409475551 +0530
Om de wijzigingstijd van meerdere bestanden te wijzigen met behulp van wildcard
$ touch -m *.txt
Verander toegangs- en wijzigingstijd samen
Gebruik de a en m optie samen om zowel toegangs- en wijzigingstijd te wijzigen
$ touch -am a.txt
$ stat a.txt File: ‘a.txt’ Size: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: 801h/2049d Inode: 5904730 Links: 1Access: (0664/-rw-rw-r--) Uid: ( 1000/enlightened) Gid: ( 1000/enlightened)Access: 2016-03-10 15:07:39.633235119 +0530Modify: 2016-03-10 15:07:39.633235119 +0530Change: 2016-03-10 15:07:39.633235119 +0530
Een specifieke toegangs-/wijzigingstijd instellen in plaats van de huidige tijd
Om de toegangs-/wijzigingstijd de toegangs-/wijzigingstijd in te stellen op een specifieke datetime gebruikt u de optie t en geeft u de datetime op in het formaat
JJJ]MMDDhhmm
$ touch -c -t 1603051015 a.txtor$ touch -c -t 201603051015 a.txt
Note – Als u de c-optie weglaat, wordt een nieuw bestand aangemaakt met de opgegeven datetime als deze nog niet bestaat.
Gebruik de tijdstempel van een ander bestand als referentie
$ touch -r ref.txt abc.txt
Het bovenstaande commando stelt de toegangs-/wijzigingstijd van abc.txt in op die van ref.txt
Specifieer datetime als een string
Naast de optie t is er nog een optie ‘-d’ die datetime accepteert in algemeen menselijk leesbare formaten.
Het volgende voorbeeld geeft alleen de datum. De tijd wordt automatisch op 00:00 gezet
$ touch -c -d '14 Mar' abc.txt
Of geef alleen de tijd op, en de huidige datum wordt geselecteerd –
$ touch -d '14:24' abc.txt
Conclusie
Dit waren enkele van de basis voorbeelden van het touch commando. Om meer te leren, bekijk de man pagina met “man touch” commando.
Of lees de manual pagina’s online hier:
https://man7.org/linux/man-pages/man1/touch.1.html
https://linux.die.net/man/1/touch