最近、あまり気に入らない奇妙なことに気付きました。
では、なぜ実行時にトレインが表示されるのでしょうかls
? また、これを停止して正常に動作させるにはどうすればよいのでしょうか? これは私が発見したイースターエッグでしょうか? Ubuntu GNOME 15.04 を実行しています。
情報更新:
走ればwhich ls
同じ電車に乗ることができますが、走るls -l $(which ls)
と別の種類の電車に乗ることになります。
実行してもcommand -v ls
何も出力されません。 実行してcommand -v sl
も何も出力されません。
cow
これはすべて、私が最近インストールした「少し軽くする」と約束されたパッケージ(またはそれに似たもの)と関係がある可能性があります。
答え1
面白いパッケージを削除するには、
sudo apt-get purge sl
または
ls
で、たとえばエイリアスを確認します。~/.bashrc
~/.profile
バイナリをチェックし
/usr/games/sl
て削除するsudo rm /usr/games/sl
出力を確認する
strace sl |& grep execve strace ls |& grep execve
3 番目のポイントが成功しなかった場合。
そして、今後は、説明文で「少し軽くする」と謳っているものは絶対にインストールしないでください。;)
答え2
一般的に、コマンドの先頭に \ を付けると、そのコマンド実行のインスタンスに対してのみエイリアスを無効にすることができます。例:
[2023]$ エイリアス ls エイリアス ls='ls -F -Chs --color=tty' [2024]$ ls 合計 140K 4.0K bin/ 0 ダウンロード@ 0 prog.git@ ... [2025]$ \ls bin ダウンロード doc.git freertos.git prog.git tmp ...
したがって、先頭に「\」を付けてlsを試すことをお勧めします。
次に、フルパスで ls コマンドを直接実行してみます。
/bin/ls
次に、/bin/lsコマンドを実行します。
また、あなたの進路を確認してください。
$PATHをエコーする /bin が最初のエントリであることを確認してください。 $PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin:/sbin:/usr/sbin:usr/local/sbin:/usr/local/bin
しかし、削除するとcow
役立つと信じています。