我们在解释我们的老师的话时遇到了很多麻烦。我们请求澄清,然后从他那里得到了以下回复:
1. 对于execve,使用您设置的环境并创建一个内置命令来生成/bin/bash的子shell,这样您就可以使用env查看导出的变量。 (他在谈论在此处创建自己的环境变量。)
2. 是的,请创建您自己的环境变量。您可以在shell启动时复制environ,并添加仅导出的变量。
这与我在Stack Overflow上发布的以下帖子有关(阅读此其他帖子将帮助您了解我正在尝试做什么): using a new path with execve to run ls command 我们只是非常困惑。我再次解释一下我们现在要做的事情。与Linux shell类似,我们需要编写自己的程序,以便可以设置环境变量,例如PATH和USER以及用户想要定义的任何其他变量。
您调用它的示例将是(在其提示符下的程序中):
1. 对于execve,使用您设置的环境并创建一个内置命令来生成/bin/bash的子shell,这样您就可以使用env查看导出的变量。 (他在谈论在此处创建自己的环境变量。)
2. 是的,请创建您自己的环境变量。您可以在shell启动时复制environ,并添加仅导出的变量。
这与我在Stack Overflow上发布的以下帖子有关(阅读此其他帖子将帮助您了解我正在尝试做什么): using a new path with execve to run ls command 我们只是非常困惑。我再次解释一下我们现在要做的事情。与Linux shell类似,我们需要编写自己的程序,以便可以设置环境变量,例如PATH和USER以及用户想要定义的任何其他变量。
您调用它的示例将是(在其提示符下的程序中):
mysetenv dog spike
这将创建一个看起来像“dog=spike”的环境变量。
更重要的是,我们需要能够设置自己的PATH变量并将其发送到exec
命令。这很令人困惑,因为根据我们所有的问题,我们不理解应该做什么。