Einführung
In diesem Lab lernen Sie, wie Sie Dateien mit dem Linux-Befehl touch erstellen und aktualisieren. Der touch-Befehl ist ein einfaches, aber leistungsstarkes Werkzeug, mit dem Sie leere Dateien erstellen und Dateistempel ändern können, ohne den Dateiinhalt zu verändern.
Dieses Lab ist für Anfänger konzipiert, die die Dateiverwaltung in Linux verstehen möchten. Sie werden lernen, wie Sie neue Dateien erstellen, ihre Zeitstempel prüfen und diese Zeitstempel nach Bedarf ändern. Diese Fähigkeiten sind grundlegend für die Systemadministration, das Skripten und die allgemeine Dateiorganisation in Linux-Umgebungen.
Am Ende dieses Labs haben Sie praktische Erfahrung mit dem touch-Befehl und verstehen seine verschiedenen Anwendungen in der Dateiverwaltung.
Erstellen Ihrer ersten Datei mit dem touch-Befehl
In diesem Schritt lernen Sie, wie Sie eine neue Datei mit dem touch-Befehl erstellen. Dies ist eine der grundlegendsten Dateioperationen in Linux.
Zunächst stellen wir sicher, dass Sie sich im richtigen Verzeichnis befinden. Führen Sie den folgenden Befehl aus:
pwd
Sie sollten eine Ausgabe sehen, die zeigt, dass Sie sich im Verzeichnis /home/labex/project befinden. Hier werden wir unsere Dateien erstellen.
Jetzt erstellen wir eine neue leere Datei mit dem touch-Befehl:
touch myfile.txt
Der touch-Befehl erstellt eine leere Datei, wenn diese nicht existiert. Wenn die Datei bereits existiert, aktualisiert touch ihre Zugriffs- und Änderungszeiten auf die aktuelle Zeit, ohne den Dateiinhalt zu verändern.
Um zu überprüfen, ob die Datei erstellt wurde, führen Sie den ls-Befehl aus:
ls -l
Sie sollten eine Ausgabe ähnlich dieser sehen:
-rw-r--r-- 1 labex labex 0 May 15 10:30 myfile.txt
Die Ausgabe zeigt:
- Dateiberechtigungen (
-rw-r--r--) - Eigentümer und Gruppe (beide
labex) - Dateigröße (0 Bytes, da die Datei leer ist)
- Datum und Uhrzeit der Erstellung
- Dateiname (
myfile.txt)
Herzlichen Glückwunsch! Sie haben erfolgreich Ihre erste Datei mit dem touch-Befehl erstellt.
Dateidetails und Zeitstempel verstehen
Nachdem Sie nun eine Datei erstellt haben, wollen wir lernen, wie Sie deren Details anzeigen und die mit Dateien in Linux verbundenen Zeitstempel verstehen können.
Jede Datei in Linux hat drei Zeitstempel:
- Zugriffszeit (Access time) - wann die Datei zuletzt gelesen oder zugegriffen wurde
- Änderungszeit (Modification time) - wann der Dateiinhalt zuletzt geändert wurde
- Statusänderungszeit (Change time) - wann die Metadaten der Datei (Berechtigungen, Eigentümer usw.) zuletzt geändert wurden
Um diese Zeitstempel für die von Ihnen erstellte Datei anzuzeigen, verwenden Sie den Befehl stat:
stat myfile.txt
Die Ausgabe sollte ähnlich wie diese aussehen:
File: myfile.txt
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 801h/2049d Inode: 655361 Links: 1
Access: (0644/-rw-r--r--) Uid: (1000/labex) Gid: (1000/labex)
Access: 2023-05-15 10:30:00.000000000 +0000
Modify: 2023-05-15 10:30:00.000000000 +0000
Change: 2023-05-15 10:30:00.000000000 +0000
Birth: 2023-05-15 10:30:00.000000000 +0000
Für eine präzisere Ansicht können Sie den Befehl ls mit bestimmten Optionen verwenden:
ls -l --time=atime myfile.txt ## Zeigt die Zugriffszeit (access time) an
ls -l myfile.txt ## Zeigt die Änderungszeit (modification time) an (Standard für ls -l)
Lassen Sie uns nun eine zweite Datei erstellen und sehen, wie man Zeitstempel vergleicht:
touch secondfile.txt
Listen Sie nun beide Dateien auf, um ihre Zeitstempel anzuzeigen:
ls -lt
Sie sollten feststellen, dass secondfile.txt oben in der Liste erscheint, da ls -lt Dateien nach Änderungszeit sortiert, wobei die zuletzt geänderten Dateien zuerst aufgeführt werden.
Das Verständnis dieser Zeitstempel ist wichtig für die Dateiverwaltung und Fehlerbehebung in Linux-Systemen.
Ändern von Dateizeitstempeln mit touch
Eine der leistungsstarken Funktionen des touch-Befehls ist die Möglichkeit, Dateizeitstempel zu ändern. Dies kann für Tests, Fehlersuche oder die Organisation von Dateien nützlich sein.
Lassen Sie uns den Zeitstempel der ersten Datei, die wir erstellt haben (myfile.txt), ändern. Wir setzen ihn auf ein bestimmtes Datum und eine bestimmte Uhrzeit mit der -t-Option:
touch -t 202301010900 myfile.txt
Dieser Befehl setzt den Zeitstempel von myfile.txt auf den 1. Januar 2023, 09:00 Uhr. Das verwendete Format ist YYYYMMDDhhmm (Jahr, Monat, Tag, Stunde, Minute).
Jetzt überprüfen wir, ob der Zeitstempel geändert wurde:
ls -l myfile.txt
Die Ausgabe sollte zeigen, dass die Änderungszeit der Datei jetzt der 1. Januar 2023, 09:00 Uhr ist:
-rw-r--r-- 1 labex labex 0 Jan 1 09:00 myfile.txt
Sie können den Zeitstempel auch auf eine relative Zeit setzen, beispielsweise eine bestimmte Anzahl von Tagen in der Vergangenheit. Beispielsweise, um den Zeitstempel auf vor 7 Tagen zu setzen:
touch -d "7 days ago" myfile.txt
Überprüfen Sie die Änderung:
ls -l myfile.txt
Eine weitere nützliche Option ist, den Zeitstempel einer Datei als Referenz für eine andere Datei zu verwenden. Lassen Sie uns eine neue Datei erstellen:
touch thirdfile.txt
Jetzt setzen wir den Zeitstempel von thirdfile.txt so, dass er mit dem von secondfile.txt übereinstimmt:
touch -r secondfile.txt thirdfile.txt
Überprüfen Sie, ob beide Dateien jetzt den gleichen Zeitstempel haben:
ls -l secondfile.txt thirdfile.txt
Diese Zeitstempel-Manipulationsfunktionen machen den touch-Befehl zu einem vielseitigen Werkzeug für die Dateiverwaltung in Linux.
Gleichzeitiges Erstellen mehrerer Dateien
Der touch-Befehl ermöglicht es Ihnen, mehrere Dateien mit einem einzigen Befehl zu erstellen. Dies kann Zeit sparen, wenn Sie mehrere Dateien auf einmal erstellen müssen.
Lassen Sie uns drei neue Dateien mit einem Befehl erstellen:
touch file1.txt file2.txt file3.txt
Um zu überprüfen, ob alle drei Dateien erstellt wurden, führen Sie aus:
ls -l file*.txt
Sie sollten alle drei neuen Dateien zusammen mit ihren Details aufgelistet sehen:
-rw-r--r-- 1 labex labex 0 May 15 11:00 file1.txt
-rw-r--r-- 1 labex labex 0 May 15 11:00 file2.txt
-rw-r--r-- 1 labex labex 0 May 15 11:00 file3.txt
Sie können auch die Mustererweiterung (pattern expansion) verwenden, um Dateien mit sequenziellen Namen zu erstellen:
touch document_{1..5}.txt
Dieser Befehl erstellt fünf Dateien mit den Namen document_1.txt, document_2.txt und so weiter bis hin zu document_5.txt.
Überprüfen Sie dies mit:
ls -l document_*.txt
Diese Möglichkeit, mehrere Dateien auf einmal zu erstellen, ist besonders nützlich, wenn Sie eine Verzeichnisstruktur für ein neues Projekt vorbereiten oder Dateivorgänge an mehreren Dateien testen.
Verwenden von touch mit Verzeichnissen
Obwohl der touch-Befehl hauptsächlich mit Dateien verwendet wird, kann er auch mit Verzeichnissen eingesetzt werden, um deren Zeitstempel zu aktualisieren. Allerdings kann er keine Verzeichnisse erstellen – dafür würden Sie den mkdir-Befehl verwenden.
Zunächst erstellen wir ein Verzeichnis, mit dem wir arbeiten können:
mkdir testdir
Jetzt überprüfen wir den Zeitstempel dieses Verzeichnisses:
ls -ld testdir
Die Ausgabe sollte die Erstellungszeit des Verzeichnisses anzeigen.
Als Nächstes verwenden wir den touch-Befehl, um den Zeitstempel des Verzeichnisses zu aktualisieren:
touch testdir
Jetzt überprüfen wir den Zeitstempel erneut:
ls -ld testdir
Sie sollten sehen, dass der Zeitstempel auf die aktuelle Zeit aktualisiert wurde.
Sie können auch die gleichen Zeitstempeloptionen verwenden, die wir zuvor gelernt haben, mit Verzeichnissen. Beispielsweise, um den Zeitstempel des Verzeichnisses auf ein bestimmtes Datum zu setzen:
touch -t 202301010900 testdir
Überprüfen Sie die Änderung:
ls -ld testdir
Ein wichtiger Hinweis zu Verzeichnissen: Der touch-Befehl aktualisiert nur die Metadaten-Zeitstempel des Verzeichnisses, nicht die Inhalte innerhalb des Verzeichnisses. Jede Datei innerhalb des Verzeichnisses behält ihre eigenen separaten Zeitstempel.
Um dies zu demonstrieren, erstellen wir eine Datei innerhalb des Verzeichnisses:
touch testdir/insidefile.txt
Jetzt überprüfen wir die Zeitstempel sowohl des Verzeichnisses als auch der Datei:
ls -ld testdir
ls -l testdir/insidefile.txt
Sie werden feststellen, dass sie unterschiedliche Zeitstempel haben, was zeigt, dass der touch-Befehl jede Entität unabhängig voneinander beeinflusst.
Zusammenfassung
In diesem Lab haben Sie gelernt, wie Sie den Linux-touch-Befehl zur Dateierstellung und Zeitstempelverwaltung verwenden. Hier sind die behandelten Schlüsselpunkte:
Grundlegende Dateierstellung: Sie haben gelernt, wie Sie leere Dateien mit dem
touch-Befehl erstellen.Verständnis von Zeitstempeln: Sie haben die verschiedenen Arten von Zeitstempeln, die mit Dateien in Linux verknüpft sind, und wie man sie anzeigt, untersucht.
Ändern von Zeitstempeln: Sie haben geübt, Dateizeitstempel auf bestimmte Daten, relative Zeiten zu ändern und Zeitstempel zwischen Dateien übereinzustimmen.
Erstellen mehrerer Dateien: Sie haben entdeckt, wie Sie mehrere Dateien gleichzeitig mithilfe der Mustererweiterung (pattern expansion) und direkter Auflistung erstellen können.
Arbeiten mit Verzeichnissen: Sie haben gelernt, wie
touchmit Verzeichnissen interagiert, indem es deren Zeitstempel aktualisiert, während die Unabhängigkeit der darin enthaltenen Dateien gewahrt bleibt.
Der touch-Befehl ist ein grundlegendes Werkzeug in der Linux-Dateiverwaltung. Seine Fähigkeit, Dateien zu erstellen und Zeitstempel zu manipulieren, macht ihn für verschiedene Aufgaben wertvoll, von einfacher Dateiorganisation bis hin zu komplexeren Skripting- und Systemadministrationsaktivitäten.
Wenn Sie Ihre Linux-Reise fortsetzen, werden diese Fähigkeiten als Grundlage für fortgeschrittenere Dateivorgänge und Systemverwaltungstasks dienen.



