Commande Touch sous Linux
La commande touch peut être utilisée pour modifier les timbres d’accès/modification des fichiers. Elle est plus souvent utilisée pour en fait juste créer rapidement un fichier vide.
Ce post montre quelques exemples très simples et rapides d’utilisation de la commande touch pour modifier les horodatages ou créer des fichiers.
Créer un fichier vide
Pour simplement créer un fichier vide avec la commande touch, utilisez la syntaxe ci-dessous.
$ touch abc.txt
Si le fichier existe déjà, son temps d’accès sera mis à jour.
Créer plusieurs fichiers avec touch
Pour créer plusieurs fichiers, spécifiez leurs noms ensemble séparés par un espace.
$ touch abc.txt cde.txt xyz.txt
Créer beaucoup, beaucoup de fichiers
Si pour une raison quelconque vous souhaitez créer beaucoup de fichiers, alors des commandes comme celles-ci seraient très utiles
# 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}
Et ensuite utiliser la commande ls pour voir tout ce qui a été créé.
Eviter de créer de nouveaux fichiers
Si vous voulez juste mettre à jour le temps d’accès d’un fichier existant, sans le créer, utilisez l’option ‘-c’. Si le fichier existe, touch mettra à jour le temps d’accès, sinon ne fera rien
$ touch -c hello.txt
Changer le temps d’accès du fichier – ‘a’
Pour changer uniquement le temps d’accès d’un fichier, utilisez l’option ‘-a’ avec le nom du fichier.
$ touch -a abc.txt
Pour vérifier le temps d’accès, utilisez la commande 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
Changer le temps modifié ‘-m’
Utiliser l’option ‘-m’ pour modifier l’heure de modification du fichier
$ 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
Pour modifier l’heure de modification de plusieurs fichiers à l’aide d’un caractère générique
$ touch -m *.txt
Modifier l’heure d’accès et l’heure de modification ensemble
Utiliser l’option a et m ensemble pour modifier à la fois l’heure d’accès et de modification
$ 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
Définir une heure d’accès/modification spécifique au lieu de l’heure actuelle
Pour définir l’heure d’accès/modification à une date spécifique, utilisez l’option t et spécifiez la date au format
YY]MMDDhhmm
$ touch -c -t 1603051015 a.txtor$ touch -c -t 201603051015 a.txt
Note – Si vous omettez l’option c, un nouveau fichier sera créé avec l’heure de la date donnée s’il n’existe pas.
Utiliser l’horodatage d’un autre fichier comme référence
$ touch -r ref.txt abc.txt
La commande ci-dessus définira l’heure d’accès/modification de abc.txt à celle de ref.txt
Spécifier le temps de date comme une chaîne
En dehors de l’option t, il existe une autre option ‘-d’ qui accepte le temps de date dans des formats généraux lisibles par l’homme.
L’exemple suivant fournit uniquement la date. L’heure est automatiquement définie à 00:00
$ touch -c -d '14 Mar' abc.txt
Ou simplement fournir l’heure, et la date actuelle sera sélectionnée –
$ touch -d '14:24' abc.txt
Conclusion
Ce sont là quelques-uns des exemples de base de la commande touch. Pour en savoir plus, consultez la page de manuel avec la commande « man touch ».
Ou lisez les pages de manuel en ligne ici :
https://man7.org/linux/man-pages/man1/touch.1.html
https://linux.die.net/man/1/touch
.