
Es ist möglich, dass das Erstellen eines symbolischen Links überhaupt nicht mit dem Erstellen eines Alias vergleichbar ist. Aber soweit ich symbolische Links bisher verstehe, tun sie dasselbe wie das Festlegen eines Alias: Sie definieren einen neuen Befehl, den Sie in Ihr Terminal eingeben können, um etwas mit einem anderen Namen auszuführen.
Wann sollten Sie einen Alias und wann einen symbolischen Link erstellen?
Antwort1
Der große praktische Unterschied ist:
- Aliase sind in Ihren Profilskripten definiert, sie sind normalerweise spezifisch für Sie undsie arbeiten nur in der Shell.
- Wenn eine ausführbare Datei mit einem neuen Namen in einem Bin-Verzeichnis verknüpft wird, dannEs handelt sich um einen Systembefehl, der allen Prozessen und Benutzern zur Verfügung steht
Detail
Ein Alias kann Optionen und Argumente enthalten, sodass Sie Ihre bevorzugten Standardoptionen für einen Befehl festlegen können:
alias ll='ls -l'
und hat nichts mit Dateien zu tun.
Ein symbolischer Link erstellt einen Eintrag im Dateisystem, der auf eine andere Datei im Dateisystem verweist:
link -s ~/somedirectory/mydoc.txt ~/someotherdirectory
erstellt einen Link in einem anderen Verzeichnis zu mydoc.txt
Jedoch.
Wird ein Link für eineausführbare Dateidann kann es einen neuen Namen für einen Befehl vergeben, genau wie Alias. Auf meinem System ls -l /usr/bin/vi
heißt es beispielsweise
lrwxr-xr-x 1 root wheel 3B 19 Nov 2019 /usr/bin/vi -> vim
Es handelt sich also jetzt vi
um einen ausführbaren Befehl, der mit identisch ist vim
. Auf vielen Systemen sind sowohl python2
& python3
installiert, und es python
wird dann ein symbolischer Link zu einem von beiden erstellt.