为什么我运行'ls'时会得到火车?

27 command-line animations ls

我最近注意到一些我不太喜欢的奇怪事情:

当跑步 ls 我得到一列火车

那么为什么我在跑步时会得到一列火车ls?我怎样才能阻止这种情况并使其行为正常?这是我发现的复活节彩蛋吗?我正在运行 Ubuntu GNOME 15.04。

信息更新:

跑步which ls让我乘坐同一列火车,而跑步ls -l $(which ls)只是让我乘坐另一种火车。

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

这可能都与cow我最近安装的(或类似的)软件包有关,该软件包承诺“让事情变得轻松一点”。

A.B*_*.B. 34

  1. 尝试通过以下方式删除有趣的包

    sudo apt-get purge sl 
    
    Run Code Online (Sandbox Code Playgroud)
  2. 检查您的别名,ls例如在您的~/.bashrc~/.profile.

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

    sudo rm /usr/games/sl
    
    Run Code Online (Sandbox Code Playgroud)
  4. 检查输出

    strace sl |& grep execve
    strace ls |& grep execve
    
    Run Code Online (Sandbox Code Playgroud)

    如果第三点没有成功。

  5. 并且在未来,不要安装任何承诺在描述中“减轻一点”的东西。;)


Om *_*han 18

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

[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会有所帮助。