Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 如何在OSX上取消设置env变量?_Macos_Environment Variables_Porting - Fatal编程技术网

Macos 如何在OSX上取消设置env变量?

Macos 如何在OSX上取消设置env变量?,macos,environment-variables,porting,Macos,Environment Variables,Porting,我正在处理makefile规则,希望在再次递归调用make之前取消设置环境变量MAKEFILES。在其他BSD系统上,我是这样做的: env -u MAKEFLAGS $(MAKE) $(SUBDIR_ARGS) env --unset=MAKEFLAGS $(MAKE) $(SUBDIR_ARGS) 在Linux上,我是这样做的: env -u MAKEFLAGS $(MAKE) $(SUBDIR_ARGS) env --unset=MAKEFLAGS $(MAKE) $(SUBDIR_

我正在处理makefile规则,希望在再次递归调用make之前取消设置环境变量MAKEFILES。在其他BSD系统上,我是这样做的:

env -u MAKEFLAGS $(MAKE) $(SUBDIR_ARGS)
env --unset=MAKEFLAGS $(MAKE) $(SUBDIR_ARGS)
在Linux上,我是这样做的:

env -u MAKEFLAGS $(MAKE) $(SUBDIR_ARGS)
env --unset=MAKEFLAGS $(MAKE) $(SUBDIR_ARGS)
然而,这两种风格在Macintosh OS X Mavericks上都不起作用,尽管我希望其他地方使用的BSD风格也能起作用

我在BSD样式调用中遇到的错误是:

env: illegal option -- u
在OSX上调用命令之前,如何取消设置环境变量?为什么其他地方使用的BSD样式不起作用

以下是Mac的环境手册页:

ENV(1)                    BSD General Commands Manual                   ENV(1)

NAME
     env -- set and print environment

SYNOPSIS
     env [-i] [name=value ...] [utility [argument ...]]

DESCRIPTION
     env executes utility after modifying the environment as specified on the command line.  The option name=value specifies an environmental variable, name, with a value of value.  The option `-i' causes env to completely ignore the environment it inherits.

     If no utility is specified, env prints out the names and values of the variables in the environment, with one name=value pair per line.

DIAGNOSTICS
     If the utility is invoked, the exit status of env shall be the exit status of utility; otherwise, the env utility exits with one of the following values:

     0       The env utility completed successfully

     1-125   An error occurred in the env utility.

     126     The utility specified by utility was found, but could not be invoked.

     127     The utility specified by utility could not be found.

COMPATIBILITY
     The historic - option has been deprecated but is still supported in this implementation.

SEE ALSO
     execvp(3), environ(7)

STANDARDS
     The env utility conforms to IEEE Std 1003.2-1992 (``POSIX.2'').

BUGS
     env doesn't handle commands with equal (``='') signs in their names, for obvious reasons.

BSD                             August 27, 1993                            BSD

使用
unset
命令。从: