SETLOCAL相当于Mac

时间:2016-03-17 14:38:16

标签: macos shell command

我有一个Windows批处理脚本,我使用SETLOCAL仅为该会话设置路径变量。该命令脚本是否有Mac等价物?

2 个答案:

答案 0 :(得分:1)

Unix / Mac等价物将是导出命令:

export FOO=1

http://www.cyberciti.biz/faq/linux-unix-shell-export-command/

答案 1 :(得分:0)

在Unix shell中(例如在Mac OS X上使用bash或sh),shell脚本中设置的所有变量都不会在shell脚本结束时存活。这意味着SETLOCAL已经是标准行为。实际上,脚本本身无法实现非SETLOCAL行为(但是shell的启动程序仍然可以命令shell在当前shell中使用'source'命令运行脚本以获得该行为。)

要使该会话启动的程序可见变量,您必须导出变量:

export BAR=1