我们有很少的可执行文件需要一些环境设置。 我们在运行可执行文件之前手动运行这些脚本
喜欢
$ . setenv.ksh
我们必须在一个脚本中调用这些来避免手动工作。 我们写了一个像
这样的sh脚本#!/bin/sh
. setenv.ksh
./abc &
仍然没有在该会话中设置环境。我觉得 ”。 setenv.ksh“使用fork运行,而不是设置环境。
请我解决这个问题。我们使用哪个命令来运行setenv.ksh,这样可以正常工作。
谢谢
答案 0 :(得分:1)
在setenv.ksh中,您需要导出您设置的所有环境变量,以便任何子shell都将继承值:
export MYENV=myValue
答案 1 :(得分:1)
我注意到环境脚本名为setenv.ksh
,但您尝试从/bin/sh
运行它。也许你的系统有一个除了ksh之外的shell /bin/sh
而且它错误地标记了它setenv.ksh
。尝试将shebang行更改为#!/bin/ksh
(或者系统中ksh的路径)。