Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
嗨,我必须在 C 程序结束时删除一个文件,但我无法做到。我试着用
execl("/usr/bin/rm","rm","example.txt",NULL);
但它不工作。如果您能提供帮助和感谢,我将不胜感激。
正如其他人指出的那样,有更有效的方法来删除文件。
如果您想知道程序失败的原因,只需在下面运行它strace:
strace
strace your-binary
您将看到程序执行的所有系统调用以及相应的返回值。在这种情况下,我强烈怀疑rm不是 in /usr/bin,而是 in /bin。您可以通过执行来检查它which rm。
rm
/usr/bin
/bin
which rm
为什么不试试remove(const char *filename)stdio.h 中的函数?
remove(const char *filename)