gpt4 book ai didi

c - execlp 行为异常

转载 作者:太空宇宙 更新时间:2023-11-04 03:59:50 26 4
gpt4 key购买 nike

我正在尝试使用 fork 和 execlp 运行一个非常简单的程序,但它并没有像我预期的那样工作。目前,我的工作目录中有一个名为“1”的文件。所以命令 rm 1* 应该删除它。然而,当通过 execlp 尝试时,它没有。

int main()
{

if(fork()==0)
{
execlp("rm", "rm", "1*", NULL);
perror("Problem\n");
}

return 0;
}

谢谢。

最佳答案

对于你想要做的事情,你想要:

execlp("sh", "sh", "rm 1*", (char *)0);

请注意,从安全性、稳健性和效率的角度来看,这是一个相当糟糕的主意。如果你想删除匹配模式的文件,你应该直接在 C 中执行此操作。使用 glob 函数和一个简单的循环很容易。

关于c - execlp 行为异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13078185/

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