我正在开发一个旧C
软件。有一个ksh
脚本执行一个C
程序,然后创建一些其他进程并结束。这些过程仍然存在。
我正在尝试在我的ksh
脚本中设置一个环境变量,以便可以在新创建的仍然存在的进程中访问它。
我试过这种方式:
#!/bin/ksh
VARIABLE=value
export VARIABLE
my_c_program
但这不起作用......我试图:
- 将我的 ksh 脚本更改为 bash
- 创建一个包装脚本来创建和导出变量,然后执行原始的 ksh 脚本(它只是执行 C 程序)
- 采购我的 ksh 脚本(或尝试使用 2 时的包装脚本)而不是执行它
但没有任何效果。
现在唯一有效的是当我明确地手动执行命令时:
export VARIABLE
在当前的 bash 终端中。
为什么?难道不能在脚本中进行导出而不是手动进行吗?