Sous un Shell Linux, comment puis-je changer l'heure de création de tous les fichiers d'un dossier à l'heure actuelle ?
Réponses
Trop de publicités?Le PO a demandé le création temps, mais Ian Yang y boehj les réponses sont basées sur la commande touch
la mise en place de la modification , accès y changement temps à l'heure actuelle.
Comme l'a dit Boehj (dans son commentaire), il n'y a pas d'obligation d'achat. création l'heure d'un fichier... Ceci est vrai pour la plupart des systèmes de fichiers, mais sur certains systèmes de fichiers modernes (tels que ext4 ) le création (ou naissance ) d'un fichier est stockée dans le fichier inode .
Nous pouvons donc donner une réponse plus correcte en respectant scrupuleusement le titre de la question :
cp -a your-folder tmp-folder
rm -rf your-folder
mv tmp-folder your-folder
Cela modifiera le création temps ( naissance ) à l'heure actuelle. Cela met également à jour le changement temps, mais en gardant inchangé le modification y accès temps.
Pour information, le changement le temps est parfois abrégé en ctime
et peut être confondu avec le création temps ( crtime
o btime
). En effet, le changement d'un fichier est le modification temps de son correspondant inode . Par conséquent, les commandes qui modifient inode
le contenu comme chmod
o chattr
a également fixé le changement à l'heure actuelle.
Naviguez jusqu'au dossier en question, disons, ~/Documents/myfiles.
$ cd ~/Documents/myfiles
Alors, faites-le :
$ touch *
Cela changera l'heure de modification à la date à laquelle vous avez exécuté cette commande.
Bien entendu, vous pouvez préciser ce point en fonction de votre cas d'utilisation, par ex.
$ touch *.doc
ne modifiera le temps de modification que pour les fichiers dont le nom contient la chaîne '.doc'.
Sous Linux, si vous voulez faire quelque chose récursivement dans un répertoire, ou si vous voulez appliquer des actions sur des fichiers répondant à certains critères, vous devez essayer find
y xargs
Toucher tous les fichiers dans ~/Documents/myfiles (y compris les fichiers dans le sous-répertoire)
find ~/Documents/myfiles -type f -print0 | xargs -0 touch