Verwendung der Linux-Kommandozeile zum Erstellen neuer Dateien
Die Linux-Kommandozeile bietet dir eine leistungsfähige Möglichkeit, neue Dateien zu erstellen. Befolge diese Schritte, um mit der Kommandozeile neue Dateien anzulegen:
Leere Dateien erstellen
Öffne zunächst ein Terminalfenster. Um eine leere Datei zu erstellen, verwende den Befehl touch
gefolgt vom Namen der Datei, die du erstellen möchtest. Beispiel:
touch neue_datei.txt
Dateien mit Inhalt erstellen
Du kannst auch Dateien mit vordefinierten Inhalten erstellen, indem du den Befehl echo
verwendest. Beispiel:
echo "Beispieltext" > meine_datei.txt
Der obige Befehl erstellt die Datei meine_datei.txt
und schreibt den Text "Beispieltext" hinein.
Dateien mit Umleitungen erstellen
Du kannst den Befehl >
auch zum Erstellen einer Datei aus anderen Quellen verwenden. Beispiel:
ls -l > dateiliste.txt
Der obige Befehl erstellt die Datei dateiliste.txt
und leitet die Ausgabe des Befehls ls -l
hinein.
Optionen zum benutzerdefinierten Festlegen von Dateinamen und Pfaden
Wenn du eine neue Datei erstellst, kannst du ihren Dateinamen und den Pfad, in dem sie gespeichert wird, anpassen. Dies gibt dir Flexibilität und Kontrolle über die Organisation deiner Dateien.
Dateinamen
Der Dateiname ist die Kennung für eine bestimmte Datei. Er kann Buchstaben, Zahlen, Unterstriche (_) und Punkte (.) enthalten. Leerzeichen sind jedoch nicht zulässig.
Um einen benutzerdefinierten Dateinamen anzugeben, verwende die Option -n
gefolgt vom gewünschten Namen.
touch -n personal_notes.txt
Pfade
Der Pfad gibt den Speicherort der Datei innerhalb des Dateisystems an. Er besteht aus einer Reihe von Verzeichnissen, die durch Schrägstriche (/) getrennt sind.
Um einen benutzerdefinierten Pfad anzugeben, verwende die Option -d
.
touch -d /home/user/documents/new_file.txt
Relative und absolute Pfade
Es gibt zwei Arten von Pfaden: relative und absolute.
- Relative Pfade werden in Bezug auf das aktuelle Verzeichnis angegeben.
- Absolute Pfade beziehen sich auf das Stammverzeichnis des Dateisystems.
Um einen absoluten Pfad anzugeben, beginne mit einem Schrägstrich (/
).
Weitere Optionen zur Anpassung
Neben der Festlegung von Dateinamen und Pfaden gibt es weitere Optionen, mit denen du die Erstellung von Dateien anpassen kannst:
-
-c
: Erstellt eine Datei nur, wenn sie noch nicht existiert. -
-f
: Erzwingt die Erstellung einer Datei, auch wenn sie bereits existiert. -
-m
: Legt die Zeit- und Datumsstempel der Datei fest. -
-r
: Kopiert die Berechtigungen und Zeit- und Datumsstempel einer vorhandenen Datei.
Festlegen von Berechtigungen für neu erstellte Dateien
Wenn du eine neue Datei erstellst, musst du Berechtigungen festlegen, die festlegen, wer die Datei lesen, schreiben und ausführen darf. Dies wird durch die drei Dateiberechtigungsbits gesteuert:
Lesen, Schreiben und Ausführen
- Lesen (r): Erlaubt das Lesen der Dateiinhalte.
- Schreiben (w): Erlaubt das Ändern oder Löschen von Dateiinhalten.
- Ausführen (x): Erlaubt die Ausführung der Datei als Programm (nur für ausführbare Dateien).
So legst du Berechtigungen fest
Du kannst Berechtigungen beim Erstellen einer Datei mit dem -c
-Flag des touch
-Befehls festlegen:
touch -c mode file_name
Dabei ist:
-
mode
die Berechtigungszeichenfolge im Formatugo+rwx
. Hier:-
u
steht für Benutzer -
g
steht für Gruppe -
o
steht für andere -
+
fügt Berechtigung hinzu -
-
entfernt Berechtigung -
r
steht für Leseberechtigung -
w
steht für Schreibrechtigung -
x
steht für Ausführungsberechtigung
-
-
file_name
ist der Name der zu erstellenden Datei.
Beispiel:
touch -c u+rw,g+r,o-x new_file
Anmerkung: Wenn du keine Berechtigungen angibst, erhält die neue Datei die Standardberechtigungen rw-r--r--
(644) für Benutzer, Gruppe und andere.
Berechtigungsmodi
Alternativ kannst du Berechtigungen auch mit einem Oktalwert festlegen. Dabei repräsentieren die drei Ziffern die Berechtigungen für Benutzer (erste Ziffer), Gruppe (zweite Ziffer) und andere (dritte Ziffer).
- Beispielsweise gibt der Oktalwert
755
die folgenden Berechtigungen an:- Benutzer: lesen, schreiben, ausführen
- Gruppe: lesen, ausführen
- Andere: lesen, ausführen
Um Berechtigungen mit einem Oktalwert festzulegen, verwende die -m
-Option des chmod
-Befehls:
chmod -m octal_value file_name
Erstellen von Dateien mit vordefinierten Inhalten
In bestimmten Fällen kann es erforderlich sein, Dateien mit vordefinierten Inhalten anstelle einer leeren Datei zu erstellen. Dies ist hilfreich in Situationen, in denen du eine Vorlage, eine Konfigurationsdatei oder andere Daten einrichten möchtest, die beim ersten Öffnen der Datei verfügbar sein sollen.
Textdateien mit vordefinierten Inhalten erstellen
Um eine reine Textdatei mit vordefiniertem Text zu erstellen, verwende den echo
-Befehl in Kombination mit der Umleitungszeichenfolge >
. Die Syntax lautet wie folgt:
echo "Dein Text hier" > deine_datei.txt
Beispiel:
echo "Dies ist eine Textdatei mit vordefiniertem Text." > vordefinierter_text.txt
Binärdateien mit vordefinierten Inhalten erstellen
Das Erstellen von Binärdateien mit vordefinierten Inhalten ist etwas komplexer und hängt vom Format der Datei ab. In vielen Fällen kannst du jedoch den dd
-Befehl verwenden, um Binärdaten in eine Datei zu schreiben. Die Syntax lautet wie folgt:
dd if=Eingabedatei of=Ausgabedatei cbs=Blockgröße
Beispiel:
Angenommen, du hast eine Binärdatei namens "binär.bin" mit einem vordefinierten Inhalt, kannst du sie wie folgt erstellen:
dd if=binär.bin of=neue_binärdatei.bin cbs=512
Bash-Skript zur automatischen Dateierstellung mit Inhalten
Wenn du mehrere Dateien mit vordefinierten Inhalten erstellen musst, kannst du ein Bash-Skript verwenden, um den Vorgang zu automatisieren. Du kannst den echo
– oder dd
-Befehl in Kombination mit einer for-Schleife verwenden, um Dateien basierend auf einer Liste von Namen und Inhalten zu erstellen.
Beispiel:
#!/bin/bash
# Liste der Dateinamen
dateinamen=(datei1.txt datei2.txt datei3.txt)
# Liste der Inhalte
inhalte=("Inhalt für Datei 1" "Inhalt für Datei 2" "Inhalt für Datei 3")
# Erstelle Dateien mit vordefinierten Inhalten
for ((i=0; i<${#dateinamen[@]}; i++)); do
echo "${inhalte[i]}" > "${dateinamen[i]}"
done
Verwendung von Skripten zum automatischen Erstellen von Dateien
Wenn du häufig neue Dateien in Linux erstellen musst, kann die Verwendung von Skripten den Prozess erheblich automatisieren und beschleunigen. Skripte sind Textdateien, die Befehle enthalten, die beim Ausführen sequenziell ausgeführt werden.
Erstellen eines einfachen Skripts
Um ein einfaches Skript zum Erstellen neuer Dateien zu erstellen, öffnest du einen Texteditor wie nano oder vim und fügst den folgenden Code ein:
#!/bin/bash
# Befehl zum Erstellen einer Datei
touch neue_datei.txt
# Befehl zum Festlegen der Dateiberechtigungen
chmod 644 neue_datei.txt
Speichere die Datei mit der Erweiterung .sh
(z. B. erstelle_datei.sh
).
Ausführen des Skripts
Um das Skript auszuführen, öffne das Terminal und navigiere zu dem Verzeichnis, in dem sich das Skript befindet. Führe dann den folgenden Befehl aus:
sh erstelle_datei.sh
Das Skript erstellt die Datei neue_datei.txt
im aktuellen Verzeichnis und setzt die Dateiberechtigungen auf 644 (Lese-/Schreibberechtigung für den Besitzer, Lese-/Schreibberechtigung für die Gruppe und keine Berechtigung für andere).
Automatisieren mit cron
Wenn du neue Dateien zu einem bestimmten Zeitpunkt oder in regelmäßigen Abständen erstellen möchtest, kannst du das Cron-Dienstprogramm verwenden. Cron ist ein Zeitplaner, mit dem du Aufgaben automatisieren kannst.
Füge den folgenden Befehl zum Crontab hinzu:
0 0 * * * /pfad/zum/erstelle_datei.sh
Dieser Befehl erstellt um 0:00 Uhr jeden Tag eine neue Datei mit dem Namen neue_datei.txt
im angegebenen Pfad.
Integrieren von Variablen
Du kannst Variablen verwenden, um die zu erstellenden Dateien und Pfade anzupassen. Beispielsweise kannst du den folgenden Code verwenden, um eine neue Datei mit dem aktuellen Datum zu erstellen:
#!/bin/bash
date=$(date +%Y-%m-%d)
touch "$date.txt"
chmod 644 "$date.txt"
Weitere Überlegungen
- Du kannst externe Programme wie
find
undawk
in deinen Skripten verwenden, um dynamischere und komplexere Dateierstellungsaufgaben durchzuführen. - Verwende
man touch
undman chmod
im Terminal, um detailliertere Informationen zu den Optionen und Parametern dieser Befehle zu erhalten. - Du kannst auch vorgefertigte Skripte online finden, wie z. B. das Shell-Skript
create_files
von Jeff Geerling, das eine Reihe von Optionen für das Erstellen neuer Dateien bietet.