
Ich habe meinen „su“-Befehl versehentlich mit Sublime Text-Binärdateien verknüpft (das passiert, wenn man darauf vertraut, die Tabulatortaste zu drücken, ohne nachzuschauen …). Jetzt öffnet „su“ einfach eine SublimeTExt-Sitzung. Weiß jemand, wie ich zur vorherigen Version zurückkehren und „su“ auf das zeigen lassen kann, worauf es zeigen soll? Danke!
EDIT: Der versehentlich ausgegebene Befehl war
sudo ln -s /opt/Sublime\ Text\ 2/sublime_text /usr/bin/su
Antwort1
Das Original su
ist in /bin/su
, also löschen Sie einfach Ihren Link:
sudo rm /usr/bin/su
Überprüfen Sie which su
, ob es wieder da ist/bin/su
Es gibt eine Priorität bei ausführbaren Pfaden, siehe:
echo $PATH
/usr/bin
kommt vor /bin
, also wird Ihr Link zuerst ausgeführt. Aber um zu lernen, erstellen Sie diesen Link erneut und führen Sie ihn aus, which su
Sie erhalten /usr/bin/su
.
Nun, alle $PATH können die ausführbare Datei selbst oder ihren Link enthalten. Die meisten dieser Pfade enthalten also eine Mischung, probieren Sie es aus ls -l /usr/bin
(ich habe lange Ergebnisse abgeschnitten):
total 925272
-rwxr-xr-x 1 root root 39552 Dec 18 14:36 [
lrwxrwxrwx 1 root root 8 Dec 21 15:14 2to3 -> 2to3-2.7
-rwxr-xr-x 1 root root 96 Jan 12 10:12 2to3-2.7
-rwxr-xr-x 1 root root 96 Jan 27 17:21 2to3-3.3
-rwxr-xr-x 1 root root 96 Jan 27 17:23 2to3-3.4
-rwxr-xr-x 1 root root 5655 Jan 7 12:12 404main
-rwxr-xr-x 1 root root 10320 Feb 7 2013 411toppm
-rwxr-xr-x 1 root root 39 Feb 17 2012 7z
-rwxr-xr-x 1 root root 40 Feb 17 2012 7za
-rwxr-xr-x 1 root root 40 Feb 17 2012 7zr
-rwxr-xr-x 1 root root 106584 Jan 15 06:49 a2p
lrwxrwxrwx 1 root root 52 Jan 25 00:22 a2ping -> ../share/texlive/texmf-dist/scripts/a2ping/a2ping.pl
-rwxr-xr-x 1 root root 883 Apr 30 2007 a5booklet
lrwxrwxrwx 1 root root 54 Jan 25 00:22 a5toa4 -> ../share/texlive/texmf-dist/scripts/pfarrei/a5toa4.tlu
-rwxr-xr-x 1 root root 10328 Apr 28 2009 aa3d
Links sind jetzt klar, 3 Links, andere sind Dateien:
l
am Anfang vonlrwxrwxrwx
(l Link, d Verzeichnis, - normale Datei, c Char-Gerät).->
auf die Zieldatei verweisen.
Antwort2
Wenn Sie dazu Aliasnamen verwendet haben, wie es in den Kommentaren gefordert wird, können Sie den Aliasnamen vorübergehend mit dem folgenden Tipp vermeiden:
\su <restofthecommandhere>
Das "\" weist Bash an, den echten Befehl zu verwenden und den Alias zu ignorieren. Anschließend können Sie Ihre .bashrc bearbeiten und die Zeile entfernen, die auf diesen Alias verweist:
gedit $HOME/.bashrc
Antwort3
Wenn Sie einen Alias verwendet haben, können Sie ihn folgendermaßen entfernen:
Vorübergehend entfernen
unalias su
Um es dauerhaft zu entfernen, löschen Sie es aus Ihrer
.bashrc
Datei.bash_aliases
.
Höchstwahrscheinlich haben Sie keine Verknüpfung su
zu Sublime Text Binary erstellt, da hierfür sudo
Berechtigungen erforderlich gewesen wären. Prüfen Sie also einfach, ob die erste Lösung in der Liste funktioniert. Wenn sie funktioniert und das Problem später erneut auftritt, müssen Sie Anweisung 2 befolgen.