gpt4 book ai didi

c - 在 Unix 环境中,有没有办法以编程方式在 C 中调用 Which?

转载 作者:太空宇宙 更新时间:2023-11-04 01:43:18 25 4
gpt4 key购买 nike

<分区>

对于 C 语言的项目,我们需要在 Unix 服务器上构建一个 shell。

它需要能够执行 Unix 原生的功能,而不是 bash(或任何其他 Unix shell)。

我正在编写一种方法,希望将对命令的调用泛化。进入一般功能:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/wait.h>
#include <string.h>
#include <limits.h>

void execCmd(char* cmd,char* options)
{
char directory[MAX_CANON] = "/bin/"; //currently is just set to /bin
char* toExec = strcat(directory,cmd);

我想将变量“目录”设置为我正在调用的 Unix 命令的正确目录。

所以,本质上,我希望能够使用类似 字符目录[MAX_CANON] = which(cmd);

这样 which 函数将返回我尝试调用的命令的目录。

如果您觉得这不是一个好的解决方案,请推荐其他方式。

谢谢

编辑:我想最坏的情况是我可以做大量的 if-else 语句,根据 cmd 参数设置“目录”vbl。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com