Linux ln Befehl Tutorial für Anfänger (5 Beispiele)
Manchmal müssen Sie während der Arbeit auf der Befehlszeile Verknüpfungen zwischen Dateien erstellen. Dies kann mit einem speziellen Befehl, genannt ln, erreicht werden. In diesem Tutorial werden wir die Grundlagen dieses Tools anhand einiger leicht verständlicher Beispiele diskutieren. Aber bevor wir das tun, ist es erwähnenswert, dass alle Beispiele hier auf einer Ubuntu 22.04 Maschine getestet wurden.
Linux ln Befehl
Wie du inzwischen verstanden hast, kannst du mit dem Befehl ln Verbindungen zwischen Dateien herstellen. Es folgt die Syntax (oder besser gesagt, eine andere Syntax) für dieses Tool:
ln [OPTION]... [-T] TARGET LINK_NAME (1st form) ln [OPTION]... TARGET (2nd form) ln [OPTION]... TARGET... DIRECTORY (3rd form) ln [OPTION]... -t DIRECTORY TARGET... (4th form)
Und so erklärt es die Man Page des Tools:
In the 1st form, create a link to TARGET with the name LINK_NAME. In the 2nd form, create a link to TARGET in the current directory. In the 3rd and 4th forms, create links to each TARGET in DIRECTORY. Create hard links by default, symbolic links with --symbolic. By default, each destination (name of new link) should not already exist. When creating hard links, each TARGET must exist. Symbolic links can hold arbitrary text; if later resolved, a relative link is interpreted in relation to its parent directory.
Die folgenden Beispiele im Q&A-Stil geben Ihnen eine bessere Vorstellung davon, wie der Befehl ln funktioniert. Aber vorher ist es gut, dass du ein Verständnis dafür bekommst, was der Unterschied zwischen Hardlinks und Softlinks ist.
Q1. Wie erstellt man einen Hard Link mit ln?
Das ist ziemlich einfach – alles, was du tun musst, ist, den Befehl ln wie folgt zu verwenden:
ln [file] [hard-link-to-file]
Zum Beispiel:
ln test.txt test_hard_link.txt
Sie sehen also, dass ein Hard Link mit dem Namen test_hard_link.txt erstellt wurde.
Q2. Wie erstellt man einen weichen/symbolischen Link mit ln?
Verwenden Sie dazu die Kommandozeilenoption -s.
ln -s [file] [soft-link-to-file]
Zum Beispiel:
ln -s test.txt test_soft_link.txt
Die Datei test_soft_link.txt ist ein Soft/Symbol-Link, wie seine himmelblaue Textfarbe bestätigt.
Q3. Wie kann man mit ln bestehende Zieldateien gleichen Namens entfernen?
Standardmäßig lässt ln nicht zu, dass Sie einen Link erstellen, wenn eine Datei gleichen Namens bereits im Zielverzeichnis vorhanden ist.
Wenn Sie jedoch möchten, können Sie ln dieses Verhalten überschreiben, indem Sie die Befehlszeilenoption -f verwenden.
Hinweis: Sie können die Befehlszeilenoption -i verwenden, wenn Sie diesen gesamten Löschvorgang interaktiv gestalten möchten.
Q4. Wie kann ich ein Backup von bestehenden Dateien mit gleichem Namen erstellen?
Wenn Sie nicht möchten, dass ln bestehende Dateien gleichen Namens löscht, können Sie es dazu bringen, ein Backup dieser Dateien zu erstellen. Dies kann mit der Kommandozeilenoption -b erreicht werden. So erstellte Sicherungsdateien enthalten am Ende ihres Namens eine Tilde (~).
Q5. Wie kann man Links in einem anderen Verzeichnis als dem aktuellen Verzeichnis erstellen?
Ein bestimmtes Zielverzeichnis (anderes als das aktuelle) kann mit der Kommandozeilenoption -t angegeben werden. Zum Beispiel mit ls:
ls test* | xargs ln -s -t /home/himanshu/Desktop/
Der oben genannte Befehl erstellt Links zu allen test*-Dateien (die sich im aktuellen Verzeichnis befinden) und legt sie im Desktop-Verzeichnis ab.
Fazit
Einverstanden, ln ist nicht etwas, das Sie täglich benötigen, besonders wenn Sie ein Neuling sind. Aber es ist ein hilfreicher Befehl, über den man Bescheid wissen sollte, denn man weiß nie, wann er einem den Tag retten würde. Wir haben einige nützliche Befehlszeilenoptionen besprochen, die das Tool anbietet. Sobald du mit diesen fertig bist, kannst du mehr über ln erfahren, indem du zu seiner Man Page gehst.