Linux Touch-Befehl
Der Touch-Befehl kann verwendet werden, um die Zugriffs-/Änderungszeitstempel von Dateien zu ändern. Häufiger wird er verwendet, um einfach nur schnell eine leere Datei zu erstellen.
Dieser Beitrag zeigt einige sehr einfache und schnelle Beispiele für die Verwendung des touch-Befehls, um Zeitstempel zu ändern oder Dateien zu erstellen.
Leere Datei erstellen
Um einfach eine leere Datei mit dem touch-Befehl zu erstellen, verwenden Sie die folgende Syntax.
$ touch abc.txt
Wenn die Datei bereits existiert, wird ihre Zugriffszeit aktualisiert.
Mehrere Dateien mit touch erstellen
Um mehrere Dateien zu erstellen, geben Sie deren Namen zusammen an, getrennt durch ein Leerzeichen.
$ touch abc.txt cde.txt xyz.txt
Viele Dateien anlegen
Wenn Sie aus irgendeinem Grund viele Dateien anlegen wollen, dann sind Befehle wie dieser sehr hilfreich
# 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}
Und dann mit dem Befehl ls nachsehen, was alles angelegt wurde.
Vermeiden Sie das Anlegen neuer Dateien
Wenn Sie nur die Zugriffszeit einer bestehenden Datei aktualisieren wollen, ohne sie zu erstellen, verwenden Sie die Option ‚-c‘. Wenn die Datei existiert, aktualisiert touch die Zugriffszeit, sonst tut sich nichts
$ touch -c hello.txt
Zugriffszeit einer Datei ändern – ‚a‘
Um nur die Zugriffszeit einer Datei zu ändern, verwenden Sie die Option ‚-a‘ mit dem Dateinamen.
$ touch -a abc.txt
Um die Zugriffszeit zu prüfen, verwenden Sie den Befehl 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
Ändern Sie die Änderungszeit ‚-m‘
Verwenden Sie die Option ‚-m‘, um die Änderungszeit der Datei zu ändern
$ 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
Um die Änderungszeit mehrerer Dateien mit Platzhalter zu ändern
$ touch -m *.txt
Zugriffs- und Änderungszeit zusammen ändern
Verwenden Sie die Optionen a und m zusammen, um sowohl die Zugriffs- und Änderungszeit
$ 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
Eine bestimmte Zugriffs-/Änderungszeit anstelle der aktuellen Zeit einstellen
Um die die Zugriffs-/Änderungszeit auf eine bestimmte Uhrzeit zu setzen, verwenden Sie die Option t und geben Sie die Uhrzeit im Format
YYY]MMDDhhmm
$ touch -c -t 1603051015 a.txtor$ touch -c -t 201603051015 a.txt
Hinweis. Wenn Sie die Option c weglassen, wird eine neue Datei mit der angegebenen Datetime erstellt, wenn sie nicht existiert.
Den Zeitstempel einer anderen Datei als Referenz verwenden
$ touch -r ref.txt abc.txt
Der obige Befehl setzt die Zugriffs-/Änderungszeit von abc.txt auf die von ref.txt
Datetime als String angeben
Neben der Option t gibt es eine weitere Option ‚-d‘, die datetime in allgemein lesbaren Formaten akzeptiert.
Das folgende Beispiel liefert nur das Datum. Die Zeit wird automatisch auf 00:00 gesetzt
$ touch -c -d '14 Mar' abc.txt
Oder geben Sie nur die Zeit an, und das aktuelle Datum wird ausgewählt –
$ touch -d '14:24' abc.txt
Abschluss
Das waren einige der grundlegenden Beispiele für den Befehl touch. Um mehr zu erfahren, lesen Sie die Manpage mit dem Befehl „man touch“.
Oder lesen Sie die Handbuchseiten online hier:
https://man7.org/linux/man-pages/man1/touch.1.html
https://linux.die.net/man/1/touch