如何从被调用的进程中导出PATH



我编写了一个小型gradle-path实用程序:

#!/usr/bin/env sh
export PATH=$PATH:/cygdrive/c/Gradle/gradle-3.5/bin

但是,当我从我的shell调用它时,PATH在最后并没有改变。

如果我理解正确的话,该变量不会在父进程中设置。

如何使之成为可能?

正如chepner所说-

用之类的东西在自己的子shell中执行它(通常(

gradle-path

将创建一个子进程,在该子进程的环境中设置PATH,然后在子进程退出时解构该环境,在父进程的内存中不执行任何操作。

要更改调用者中的PATH,您必须在调用者的环境中运行它——"源"它——如下所示:

. gradle-path

或者这个:

source gradle-path

这些基本上将所列文件中的命令插入到调用方的解析流中,就好像它们是在那里编写的一样。

相关内容

  • 没有找到相关文章

最新更新