如何从mac上的$ PATH中删除条目

Tus*_*oul 62 macos bash terminal path-variables .bash-profile

我试图安装Sencha Touch SDK工具2.0.0但无法正常运行.它在$ PATH变量中创建了一个条目.后来我删除了sencha sdk tools文件夹,但没有意识到路径变量仍然存在.

我什么时候echo $PATH得到 -

/Applications/SenchaSDKTools-2.0.0-beta3:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

我搜索了如何从$ PATH中删除变量并执行以下步骤:

  1. 发出命令 PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin"
  2. 难道echo $PATH这表明/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
  3. 发出命令 export PATH
  4. 关闭终端并重新打开它.发出命令echo $PATH.这次我得到了 /Applications/SenchaSDKTools-2.0.0-beta3:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

谁能告诉我我做错了什么?

小智 138

  1. echo $PATH 并复制它的价值
  2. export PATH=""
  3. export PATH="/path/you/want/to/keep"

  • @DaddyM我称之为`/ path/you/want/to/keep`. (5认同)
  • 3. ..."/ path/YOU/WANT/TO/LEAVE" (2认同)
  • 哈哈,这很简单! (2认同)
  • 另请注意,在运行`export PATH =""`之后,您可能会看到以下错误:-bash:tail:没有这样的文件或目录-bash:sed:没有这样的文件或目录. (2认同)

Ans*_*ers 25

检查以下文件:

/etc/bashrc
/etc/profile
~/.bashrc
~/.bash_profile
~/.profile
~/.MacOSX/environment.plist
Run Code Online (Sandbox Code Playgroud)

其中一些文件可能不存在,但它们最有可能包含$PATH定义.

  • `/ etc`中的那个会影响所有用户,主目录(`~`)上只有你自己的用户.`〜/ .bashrc`中的设置优先于`/ etc/bashrc`中的设置. (2认同)
  • 改变`〜/ .bash_profile`对我有用:) (2认同)

Tim*_*art 19

在MAC OS X Leopard和更高版本上

cd /etc/paths.d
Run Code Online (Sandbox Code Playgroud)

上面的目录中可能有一个文本文件,其中包含您要删除的路径.

vim textfile //check and see what is in it when you are done looking type :q 
//:q just quits, no saves
Run Code Online (Sandbox Code Playgroud)

如果您要删除的那个执行此操作

rm textfile //remove it, delete it
Run Code Online (Sandbox Code Playgroud)

这是一个指向有更多信息的网站的链接,即使它说明了"添加"路径.但是,您可能会获得一些见解.


dev*_*ull 14

您正在做的事情对当前会话有效(仅限于您正在工作的终端).你需要坚持这些变化.考虑将上面步骤1-3中的命令添加到您的${HOME}/.bashrc.

  • 对不起,我不太明白你在说什么。我应该在哪里添加 ${HOME}\.bashhrc 命令? (4认同)

Nou*_*non 12

如果您要专门删除 Python 3 的路径,我在~/.zprofile和中找到了它~/.zshrc.


Obi*_*ill 10

$PATH包含从实际文件引用的数据。因此,您应该找到包含要删除的引用的文件,然后删除该引用。

这是一个很好的列表,可以逐步运行[从@Ansgar的答案复制并进行了一些小的更新]。

/etc/bashrc
/etc/profile
~/.bashrc
~/.bash_profile
~/.profile
~/.MacOSX/environment.plist
/etc/paths
/etc/paths.d/
Run Code Online (Sandbox Code Playgroud)

请注意,这/etc/paths.d/是一个包含带有路径引用的文件的目录。例如,此目录中可能有一个名为 的文件fancy-app,在该文件中您将看到如下所示的条目:

/path/to/fancy-app
Run Code Online (Sandbox Code Playgroud)

该路径将出现在您的文件中$PATH,您可以删除文件中的条目以将其删除,或者如果文件只有您要删除的一个引用,则可以删除该文件。