【问题标题】:Adding new directory to the $PATH将新目录添加到 $PATH
【发布时间】:2012-12-23 18:16:00
【问题描述】:

为了使用ringojs 运行新的Web 应用程序,建议将ringojs bin 目录添加到您的PATH 环境变量中,所以我尝试这样:

 echo 'export PATH=Users/repos/ringojs/bin:$PATH' >> ~/.profile

然后关闭并重新打开终端,并尝试创建新的ringojs web 应用程序,如 ringo README 中所述。

ringo-admin create --google-appengine myapp

但是,我总是:

zsh: command not found: ringo-admin

请注意,我已成功设置 antivy 工具。我在那里错过了什么吗?添加到$PATH 的方式不正确吗?

更新:

使用Abraham 的建议后,目前的.bash_profile 内容如下:

 <echo message=" test       --> run JUnit and RingoJS tests"/>
        <echo message=" docs       --> generates the API docs"/>
        <echo message=" package    --> creates RingoJS distribution"/>
        <echo message=" dpkg       --> creates RingoJS debian package"/>
        <echo message=" clean      --> clean up compiled resources"/>
    </target>

    <!-- =================================================================== -->
    <!-- Initializes some variables                                          -->
    <!-- =================================================================== -->
    <target name="init">
        <property name="project" value="ringojs"/>
        <property name="version" value="0.9"/>

        <property name="home" value="."/>

        <property name="src" value="${home}/src"/>
        <property name="lib" value="${home}/lib"/>
        <property name="build" value="${home}/build"/>
        <property name="classes" value="${build}/classes"/>
        <property name="docs" value="${home}/docs"/>
        <property name="jsdocs" value="${home}/docs/modules"/>
        <property name="javadocs" value="${home}/docs/java"/>

        <property name="ringo-core.jar" value="${lib}/ringo-core.jar"/>
        <property name="ringo-modules.jar" value="${lib}/ringo-modules.jar"/>

        <property name="debug" value="on"/>
        <property name="optimize" value="on"/>
        <property name="deprecation" value="on"/>

        <property name="testclasses" value=""/>

        <path id="classpath">
            <fileset dir="lib">
                <include name="**/*.jar"/>
                <exclude name="${ringo-core.jar}"/>
            </fileset>
            <pathelement location="${classes}"/>export PATH=Users/repos/ringojs/bin:$PATH' >> ~/.profile

但是,即使我关闭并重新打开终端会话,我仍然找不到相同的 ringo-admin 命令。

【问题讨论】:

    标签: osx-lion zsh ringojs


    【解决方案1】:

    您的问题是您在启动新终端时没有初始化 PATH,而是仅在当前会话中设置它。

    您要做的是输入以下命令:

       cd ~
    

    这将导航到您的主目录

       ls -al
    

    列出所有文件,包括隐藏文件。在出现的列表中,验证名为 .zprofile 的文件是否存在。

    要创建或编辑文件,请运行

       vi .zprofile
    

    打开文件。要移动到其内容的末尾,请按 Shift-G,然后(小写)O 添加新行并进入插入模式。现在输入:

      export PATH=/Users/repos/ringojs/bin:$PATH
    

    在文件末尾。

    Esc,输入:x,然后按Return

    【讨论】:

    • 感谢您的回复。我试过了,但我总是在终端中找不到 ringo-admin 命令,请查看我上面更新的 .bash_profile 文件以检查它是否缺少某些内容。提前致谢。
    • 自从您更改了 .bash_profile 后,您是否重新启动了终端?另外,您确定上面发布的文件是您的 bash_profile 吗?它看起来一点也不像 bash 配置文件,也不包含 PATH 导出
    • 好地方 ZyX。为 zh 修改的问题
    • 你不需要touch。如果打开的文件不存在,Vim 会在保存时创建它。
    【解决方案2】:

    .profile 文件只有在 bash 或其他 POSIX 兼容的 shell 是登录 shell 时才会被获取。仅当使用名为 sh 的符号链接(即在 POSIX 兼容模式下)调用 Zsh 时,它才会获取此信息。 .bash_profile 相同,但仅适用于 bash。您需要的是将此行添加到.zshrc(如果您只想在交互式会话中使用它,应该是首选),.zshenv(适用于所有会话)或(最好的)只是尝试完全系统重启新的(带有export … 行).zprofile:如果碰巧在正常登录shell 之前启动了登录shell,它将完美运行。

    请注意,如果您选择使用.zshrc,尤其是.zshenv,那么您必须检查新路径是否已经存在:导出的变量被传递给每个父进程,因此您很容易得到一系列$PATH 中的相同目录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-21
      • 1970-01-01
      • 2014-09-15
      • 2020-01-21
      • 2011-08-07
      • 1970-01-01
      • 2012-12-22
      • 2011-11-13
      相关资源
      最近更新 更多