ubuntuusers.de

touch

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Hinweis:

Dieser Artikel beschreibt die alte Implementation des Programms. Ab Ubuntu 24.04 ist auch mit Paket rust-coreutils 🇬🇧 eine neue Implementierung in der Programmiersprache Rust für Ubuntu verfügbar, und ab Ubuntu Version 25.10 wird die Implementierung in Rust als Standard bevorzugt.

Die Implementierung in Rust strebt Funktionsgleichheit mit der alten Implementierung an. Es können aber kleine Abweichungen auftreten. Dies bedeutet, dass das hier Beschriebene von der am eigenen Rechner vorgefundenen Situation abweichen kann.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png Mit dem Befehl touch lassen sich Zugriffs- und Änderungs-Zeitstempel von Dateien ändern. Existiert die von touch zu ändernde Datei nicht, wird sie neu angelegt. touch wird daher häufig auch zum Erstellen leerer Dateien verwendet.

Installation

 

  • Bis Ubuntu 25.04 ist das Programm im essentiellen Paket coreutils enthalten und deshalb auf jedem System installiert. Diese Variante beruht auf den altbekannten GNU Core Utilities.

  • Ab 25.10 ist das Paket coreutils 🇬🇧 jedoch ein Metapaket, welches alternativ durch gnu-coreutils 🇬🇧 oder rust-coreutils 🇬🇧 oder weitere befriedigt werden kann.

  • Bei 25.10 und 26.04 installiert das Paket coreutils-from-uutils 🇬🇧 beide vorstehend genannten Pakete und aktiviert die rust-coreutils als Vorgabe. Siehe Artikel rust-coreutils zur Umstellung auf die GNU-Utilities.

  • Ab 26.10 soll aber coreutils-from-uutils nur noch die rust-coreutils installieren. Wer dann die alten gnu-coreutils verwenden will, muss coreutils-from-gnu 🇬🇧 manuell installieren.

Aufruf

Hinweis:

Der unter Windows vorhandene Zeitstempel "Erstellt am…" ist zwar auch bei Linux (crtime, ab ext3) vorhanden, kann aber nicht ausgelesen werden (997093).

Die allgemeine Syntax lautet [1]:

touch OPTION DATEI 

touch kennt folgende Optionen:

Optionen von touch
Option Beschreibung
--help Hilfe (eine erweitere Hilfe liefert der Befehl info touch)
-a Modifikation des Zugriffszeitstempels der Datei
-c oder --no-create (Wenn keine Datei vorhanden ist:) Keine Datei erstellen
-d oder --date=DATUM Verwendung von Datum oder STRING statt der augenblicklichen Zeit (siehe auch -t)
-h oder --no-dereference Modifikation des Zeitstempels symbolischer Links, nicht der verlinkten Datei
-m Modifikation des Änderungszeitstempels der Datei
-r oder --reference=FILE Verwendung der Zeitstempel der angegebenen Datei statt der augenblicklichen Zeit
-t ZEITSTEMPEL Verwendung von [JJ]MMTThhmm[.ss] statt der augenblicklichen Zeit

Pflichtangaben langer Optionen sind auch für die entsprechenden Kürzel obligatorisch.

Beispiele

Mit dem folgenden Befehl wird eine leere Datei datei.txt erstellt:

touch datei.txt 

Die Datei datei.txt verfügt (nach einer Bearbeitung) über folgende Zeitstempel, wie sich mit stat ermitteln lässt:

stat datei.txt 
  File: `datei.txt'
(…)
Access: 2012-01-29 18:35:34.673330788 +0100
Modify: 2012-01-29 18:34:32.909780882 +0100
Change: 2012-01-29 18:35:34.673330788 +0100

Mit dem Befehl

touch datei.txt 

werden alle Zeitstempel auf die gegenwärtige Zeit geändert:

stat datei.txt 
  File: `datei.txt'
(…)
Access: 2012-01-29 18:42:14.564376369 +0100
Modify: 2012-01-29 18:42:14.564376369 +0100
Change: 2012-01-29 18:42:14.564376369 +0100

Mit dem folgenden Befehl

touch -t 0912311627 datei.txt 

werden Zugriff- und Änderungszeitstempel auf den 31. Dezember 2009, 16:27 Uhr geändert.

stat datei.txt 
  File: `datei.txt'
(…)
Access: 2009-12-31 16:27:00.000000000 +0100
Modify: 2009-12-31 16:27:00.000000000 +0100
Change: 2012-01-29 18:45:01.310207242 +0100

Und schließlich wird mit dem Befehl

touch -m -t 1008170539 datei.txt 

nur der Änderungszeitstempel auf den 17. August 2010, 5:39 Uhr geändert.

stat datei.txt 
  File: `datei.txt'
(…)
Access: 2009-12-31 16:27:00.000000000 +0100
Modify: 2010-08-17 05:39:00.000000000 +0200
Change: 2012-01-29 18:48:14.557583443 +0100

Mit diesem Befehl

touch -r datei.txt -d "-2 months -5 days" datei.txt 

werden Zugriff- und Änderungszeitstempel relativ zu den bestehenden um 2 Monate und 5 Tage zurückgesetzt (unter Beachtung eines Bugreports 🇬🇧). Wird die -r-Option weggelassen, wird der Zeitstempel relativ zur gegenwärtigen Zeit berechnet.

Diese Revision wurde am 6. Oktober 2026 20:09 von Ruth-Wies erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Shell