无法加载ls,touch等基本命令。在终端

时间:2017-05-20 06:08:43

标签: linux bash macos shell

我无法在终端上使用ls等基本命令。以下是我之后所做的步骤,我无法使用它们。

我使用终端卸载了anaconda。我使用rm -Rf anaconda删除整个目录。然后我用open ~/.bash_profile删除了anaconda创建的路径。然后我保存了.bash_profile。完成此步骤后,我无法访问基本命令。

所以我用Google搜索了一下。我想出了这个链接:https://superuser.com/questions/1061765/getting-the-following-error-when-using-ls-in-mac-terminal-bash-ls-command-no?newreg=f6c3fe6862de4085b0ce20a82f0394dd

根据提供的答案。当我输入命令export PATH=/bin:/usr/bin:$PATH并点击 return 时。命令开始工作。但当我关闭终端并重新启动它时,命令仍然无法正常工作。我再次需要输入命令export PATH=/bin:/usr/bin:$PATH。根据答案,我不得不在 .bash_profile 文件中进行更改以自动加载命令。我做了相应的更改,但仍然无法直接加载它们。这是我的.bash_profile目前

# Setting PATH for Python 3.6
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"

export PATH=/bin:/usr/bin:$PATH
export PATH=/bin:/usr/bin:/usr/local/bin:
export PATH=/usr/local/bin:/usr/local/sbin:$PATH
export PATH=/usr/local/bin

我是终端的新手。我对PATH并不熟悉。如果你能以某种方式帮助我,我将不胜感激。

2 个答案:

答案 0 :(得分:2)

您始终可以键入/bin/ls(或/usr/bin/gcc/bin/cp)以及其他标准程序的完整路径。例如,命令/bin/ls *.c/bin/pwd仍应使用错误的PATH设置。

您对PATH的理解是错误的。它应该包含由冒号:分隔的几个目录。在PATH (variable)Unix shell - s上阅读wikipage。

你可能想要

export PATH=/bin:/usr/bin:/usr/local/bin:$HOME/bin

PATH中的条目顺序对exec(3)函数和shell很重要;您可以决定将$HOME/bin放在前面,等等......)

您可能希望编辑您的~/.bashrc(或者~/.bash_profile,但我建议~/.bashrc,因为您只想改变互动的行为 shells)文件在那里添加上面的行。 BTW那些~/.bash*文件只能在shell初始化时读取,所以你几乎需要打开一个新的终端来获取它们(或者用例如exec /bin/bash重启你的shell)

要运行编辑器,您需要知道其名称(例如vimemacsnano ....)并找到其路径。有时,EDITOR环境变量已正确设置(因此请尝试/bin/echo $EDITOR并查看environ(7))。顺便说一下,您可以使用/usr/bin/find命令。例如,如果您熟悉emacs,则可以运行/usr/bin/emacs $HOME/.bashrc

请注意,$HOME$EDITOR(在您的问题中为$PATH展开。阅读bash中的shell expansions,并阅读globbing。见glob(7)

另见Advanced Bash Scripting Guide

答案 1 :(得分:0)

你的路径错了。在终端中运行此命令:

{{1}}