无法在 Linux 中使用 ls 命令

无法在 Linux 中使用 ls 命令

使用 VirtualBox 时,我无法使用该ls命令,它显示

ls: unrecognized option '--color=auto'
ls: use the --help option for usage information

有人可以给我建议吗?

我搜索了谷歌,并通过alias命令显示

alias cp='cp -i'
alias dmesgg='dmesg | grep'
alias l='ls $LS_OPTIONS -lA'
alias lh='ls $LS_OPTIONS -lh'
alias ll='ls $LS_OPTIONS -l'
alias ls='ls $LS_OPTIONS'
alias lt='ls $LS_OPTIONS -lht'
alias mv='mv -i'
alias pss='ps -ef | grep'
alias rm='rm -i'

请提供任何建议。

答案1

首次运行unalias ls。然后ls正常运行。

每次启动新 shell 时,您都必须这样做,除非您找到创建错误别名的位置,例如在/etc/profile~/.bash_profile、中~/.bash_login~/.profile如上面的 @dirkt 所述,或者在 中~/.bashrc。或者,您可以将其添加unalias ls到 的末尾~/.profile,尽管这是一种非常讨厌的黑客行为。

答案2

您可能有一个错误配置.profile或类似的文件。(请查看man您的 shell 的命令,有很多。如果您不知道您有哪个 shell,请使用ps。)它要么错误地设置选项'--color=auto'<br/>(如果这不是剪切和粘贴错误)使用类似于您谷歌搜索的别名,要么您有一个ls不理解此选项的命令。

要使其ls工作,请尝试直接将其调用为/bin/ls。如果它不在 中/bin,请尝试which ls找出它在哪里。

使用工作ls命令,查看各种 shell-profile 文件,并修复问题。

答案3

使用ls 暂时地无需unalias运行,只需运行\lscommand ls

要永久解决根本原因,你需要找到别名的定义位置。 跑步

bash -ixlc : 2>&1 | grep -w ls

它会显示alias在 shell 启动时运行的实际命令。然后你可以 grep 该字符串来查找文件并编辑它,或者你也可以运行bash -ixlc : 2>&1 | grep -P '^\++ (\.|source)\s'列出所来源的文件并编辑其中的别名定义

或者直接运行

bash -ixlc : 2>&1 | grep -P '\bls\b|^\++ (\.|source)\s'

它将显示源文件,后面跟着该文件中的别名

相关内容