私のシステムのどこか(問題はどこにあるのかわからないこと)に優先順位のあるシンボリックリンクがありますが、リンクがbash
壊れて動作しません。
だけでなく:
- 現在のディレクトリ:
mysymlink
- パスのどこか(パッケージによってインストールされます):
mysymlink
現在のディレクトリで実行すると、ファイルシステムのどこかにあるmysymlink
(壊れた)シンボリックリンクが呼び出されます。mysymlink
現在のディレクトリでシンボリックリンクを使用できるようにシンボリックリンクを検索し、削除します。
どうやって見つけることができますか?
(編集)具体例:
コマンド -v testcafe
/usr/local/bin/testcafe
ls -l /usr/local/bin/testcafe
ls:/usr/local/bin/testcafeにアクセスできません:そのファイルまたはディレクトリがありません
(ノート:宛先パスを削除しました。間違いによる)
このシンボリックリンク(私のシステムのどこかで)をどのように削除できますか?
ベストアンサー1
command -v UTILITY
コマンドを実行すると、シェルが何を実行しようとしているかが表示されますUTILITY
。
報道された後
/usr/local/bin/testcafe
しかし、その後
ls: cannot access /usr/local/bin/testcafe: No such file or directory
これを試みると、ユーティリティの報告された場所がシェルによってキャッシュされ、削除されたとls -l
考えられます。testcafe
シェルのキャッシュをフラッシュするには、次を使用しますhash -r
(このコマンドは何も印刷しません).これによりキャッシュがフラッシュされ、シェルは次回の実行時にフルパスルックアップを実行しますtestcafe
。