Wichtige Optionen
`readlink` hat nicht viele Optionen, da es eine einfache Funktion zum Lesen des Pfades eines symbolischen Links ausführt. Es wird hauptsächlich verwendet, um den tatsächlichen Pfad des Links zu finden.
1. Link-Informationen
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`readlink` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Häufig verwendete Beispiele
`readlink` wird hauptsächlich verwendet, um das tatsächliche Ziel eines symbolischen Links zu überprüfen oder um den absoluten Pfad einer Datei in einem Skript zu erhalten. Lernen Sie durch die folgenden Beispiele, wie man es anwendet.
Überprüfung des Ziels eines symbolischen Links
echo 'Hello World' > original_file.txt
ln -s original_file.txt link_to_file.txt
readlink link_to_file.txt
Zuerst erstellen Sie mit dem Befehl `ln -s` einen symbolischen Link namens `link_to_file.txt` und überprüfen dann mit `readlink` den Pfad der Originaldatei.
Tatsächlichen absoluten Pfad einer Datei finden
readlink -f link_to_file.txt
Gibt den absoluten Pfad der tatsächlichen Datei aus, auf die der symbolische Link im aktuellen Verzeichnis verweist. Die `-f`-Option folgt dem Link bis zur tatsächlichen Datei.
Verwendung des absoluten Pfads in Skripten
SCRIPT_PATH=$(readlink -f "$0")
SCRIPT_DIR=$(dirname "$SCRIPT_PATH")
echo "Absoluter Pfad des Skripts: $SCRIPT_PATH"
echo "Verzeichnis des Skripts: $SCRIPT_DIR"
In Skripten kann `readlink -f` in Kombination mit `dirname` verwendet werden, um auf andere Dateien basierend auf dem absoluten Pfad des aktuellen Skripts zuzugreifen.
Unterschied zwischen readlink und ls -l
`ls -l` zeigt auch das Ziel eines symbolischen Links an, aber `readlink` ist darauf spezialisiert, den Originalpfad als sauberen String für automatisierte Verarbeitung in Skripten auszugeben.
- ls -l: Gibt das Ziel zusammen mit den Details des Links aus. (z.B. `link_to_file.txt -> original_file.txt`)
- readlink: Gibt nur den reinen Zielpfad-String aus. (z.B. `original_file.txt`)