$ PATH和$ fpath有什么区别?

时间:2013-12-08 07:41:52

标签: macos path

当我输入echo $PATHecho $FPATH时,我会得到不同的输出。 $PATH$FPATH之间有什么区别?

我使用Mac OSX Mavericks。

3 个答案:

答案 0 :(得分:7)

FPATH是函数定义的搜索路径。

  

FPATH 函数定义的搜索路径。当引用具有-u属性的函数和未找到命令时,将搜索此路径中的目录以查找与函数或命令同名的文件。如果找到具有该命令名称的可执行文件,则在当前环境中读取并执行该文件。与PATH不同,当前目录必须由显式表示。而不是相邻:字符或开头或结尾:。

- 来自mac developer library

除了被ksh用作@robmayoff在answer中提到的用法之外。 zsh也使用它。

答案 1 :(得分:1)

两者都是不同的环境变量,它们的值可能不一样。

另请参阅此environment variables

链接

FPATH Contains a list of directories that the z/OS shell searches to find shell functions.

PATH Defines the default command path.

答案 2 :(得分:0)

类Unix系统上的所有shell都在PATH搜索可执行文件作为子进程运行。

Korn shell(ksh)在FPATH中搜索定义要在当前进程中加载​​和执行的shell函数的文件。

Z shell(zsh)在fpath中搜索定义要在当前进程中加载​​和执行的shell函数的文件。请参阅Autoloading Functions