当前位置: 首页>>技术教程>>正文


为什么我运行’ls’时要坐火车?

, , ,

问题描述

我最近注意到一些我不太喜欢的怪现象:

那么,为什么在运行ls时要坐火车?我该如何阻止它并使它正常运行?这是我发现的复活节彩蛋吗?我正在运行Ubuntu GNOME 15.04。

信息更新:

运行which ls可以使我获得相同的火车,而运行ls -l $(which ls)可以使我获得另一种火车。

运行command -v ls不会输出任何内容。并且运行command -v sl也不会输出任何内容。

这可能与我最近安装的cow(或类似的东西)软件包有关,该软件包承诺“可以减轻一些负担”。

最佳答案

  1. 尝试通过删除有趣的包

    sudo apt-get purge sl 
    
  2. 检查ls的别名,例如在您的~/.bashrc~/.profile中。

  3. 检查二进制/usr/games/sl并删除

    sudo rm /usr/games/sl
    
  4. 检查输出

    strace sl |& grep execve
    strace ls |& grep execve
    

    如果第三点没有成功。

  5. 而且将来,请勿在说明中安装任何可以“稍微减轻点”的东西。 😉

次佳答案

通常,您可以在命令前加上\以仅对该命令运行实例禁用别名。例如。,


[2023]$ alias ls
alias ls='ls -F -Chs --color=tty'
[2024]$ ls
total 140K
4.0K bin/           0 Downloads@           0 prog.git@
...

[2025]$ \ls
bin  Downloads     doc.git  freertos.git  prog.git  tmp
...

因此,我建议您使用带有前置’\’的ls

接下来,您可以尝试直接使用完整路径运行ls命令。


/bin/ls

接下来,命令/bin /ls

另外,检查你的路径,


echo $PATH
make sure that /bin is the first entry.
$PATH=/usr/bin:/usr/local/bin:/usr/bin:/bin:/sbin:/usr/sbin:usr/local/sbin:/usr/local/bin

但是,我相信删除cow会有所帮助。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/7742.html,未经允许,请勿转载。