
誤って「su」コマンドを Sublime Text バイナリにリンクしてしまいました (確認せずにタブを押すことを信頼するとこうなります...)。現在、「su」は SublimeTExt セッションを開くだけです。以前のバージョンに戻して、「su」を本来指しているものにポイントする方法を知っている人はいますか? ありがとうございます!
編集:誤って発行されたコマンドは
sudo ln -s /opt/Sublime\ Text\ 2/sublime_text /usr/bin/su
答え1
オリジナルsu
は にあります/bin/su
ので、リンクを削除してください:
sudo rm /usr/bin/su
which su
戻っているか確認してください/bin/su
実行可能パスには優先順位があります。以下を参照してください。
echo $PATH
/usr/bin
が の前に来るので/bin
、リンクが最初に実行されます。ただし、学習するには、そのリンクを再度作成して実行すると、which su
が得られます/usr/bin/su
。
まあ、すべての $PATH には実行ファイル自体またはそのリンクを含めることができます。そのため、それらのパスのほとんどには混合ファイルが含まれているので、ls -l /usr/bin
試してみてください (長い結果は省略しました)。
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
リンクは現在明確です。3 つのリンク、その他はファイルです。
l
lrwxrwxrwx
(l リンク、d ディレクトリ、- 通常のファイル、c 文字デバイス)の先頭。->
対象ファイルを指します。
答え2
コメントで質問されているように、エイリアスを使用してこれを行う場合は、次のようにすることでエイリアスを一時的に回避できます。
\su <restofthecommandhere>
「\」は、エイリアスを無視して実際のコマンドを使用するように bash に指示します。次に、.bashrc を編集して、このエイリアスを参照する行を削除します。
gedit $HOME/.bashrc
答え3
エイリアスを使用した場合、それを削除する方法は次のとおりです。
一時的に削除する
unalias su
完全に削除するには、
.bashrc
または.bash_aliases
ファイルから削除します。
su
おそらく、権限が必要なため、Sublime Text バイナリにリンクしなかったのでしょうsudo
。リストの最初の解決策が機能するかどうかを確認してください。その時点では機能していても、後で問題が再発する場合は、手順 2 に従う必要があります。