将新目录添加到$ PATH

时间:2012-12-23 18:16:00

标签: osx-lion zsh ringojs

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

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

然后关闭并重新打开终端,并尝试按照ringo README中的说明创建新的ringojs网络应用。

ringo-admin create --google-appengine myapp

但是,我总是这样:

zsh: command not found: ringo-admin

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

更新

在使用亚伯拉罕建议之后,到目前为止,这是.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命令。

2 个答案:

答案 0 :(得分:1)

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

您要执行的操作是键入以下命令:

   cd ~

这将导航到您的主目录

   ls -al

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

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

   vi .zprofile

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

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

在文件的末尾。

Esc ,键入:x,然后按返回

答案 1 :(得分:0)

仅当bash或其他POSIX兼容shell是登录shell时才会获取

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

请注意,如果您选择使用.zshrc,尤其是.zshenv,则必须检查新路径是否已存在:导出的变量将传递到每个父流程,因此您很容易就会结束在$PATH中有一系列相同的目录。