2013-04-08 214 views
35

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

当我做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

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

回答

7

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

+1

对不起,我不太明白你在说什么。我应该在哪里添加$ {HOME} \。bashhrc命令? – 2013-04-08 06:52:57

+0

,我知道这些命令对当前终端会话有效。这就是为什么我认为“导出”将起作用 – 2013-04-08 06:55:11

+0

将步骤1和3中的命令添加到文件'$ {HOME} /。bashrc'(在文件末尾)。打开一个新的终端并执行'echo $ PATH'。 – devnull 2013-04-08 06:56:16

0

当您登录或启动bash shell时,根据.bashrc或.bash_profile加载/配置环境变量。无论您正在做什么导出,只对当前会话有效。所以export PATH=/Applications/SenchaSDKTools-2.0.0-beta3:$PATH这个命令在你每次打开一个shell的时候都会被执行,你可以重写它,但是这只适用于当前会话。编辑.bashrc文件以满足您的需要。如果它说权限被拒绝,那么文件可能是写保护的,这是指向其他文件的链接(许多组织保留一个主.bashrc文件,并为每个用户提供一个链接到其主目录,您可以复制该文件而不是链接并开始添加内容到它)

19

检查下列文件:

/etc/bashrc 
/etc/profile 
~/.bashrc 
~/.bash_profile 
~/.profile 
~/.MacOSX/environment.plist 

有些文件可能不存在,但他们是最有可能的人包含$PATH定义。

+0

〜/ .profile返回“no such file”,其他所有人都返回“permission denied” – 2013-04-08 09:27:10

+0

您需要超级用户权限来编辑'/ etc'中的文件。你应该至少可以读取所有的文件,但是(只要它们存在)。什么是文件的权限? ('ls -el filename') – 2013-04-08 09:46:31

+0

/etc目录下的bashrc和〜/目录下的bashrc之间的区别是什么? – 2013-04-09 06:05:57

0

在终端窗口中使用sudo pico /etc/paths并将条目更改为您想要删除的条目,然后打开新的终端会话。

+0

将来,我建议您在回答之前先阅读问题的正文。 – 2015-12-27 06:13:03

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

3. ...“/ path/YOU/WANT/TO/LEAVE” – DaddyM 2015-08-23 19:33:07

+2

@DaddyM我会称之为'/ path/you/want/to/keep'。 – 2015-08-25 15:38:17

+0

哈哈,这很简单! – 2015-12-10 11:50:01

5

在Mac OS X Leopard和更高

cd /etc/paths.d 

可能有在上述的文本文件包含的目录是你想要移除的路径。

vim textfile //check and see what is in it when you are done looking type :q 
//:q just quits, no saves 

如果你想删除一个做到这一点

rm textfile //remove it, delete it 

这里是a link到上有更多的信息,即使它说明“增加”的路径的站点。但是,您可能会获得一些见解。

+0

谢谢。你的回答帮助我解决我的问题 – 2018-01-14 18:41:55