运行 一个 c++ 文件中的多个 execve 函数
running multiple execve functions in one c++ file
我必须编写一个 c++
程序,其中 "counts the number of lines, words and the number of bytes from a text file",所有这些都必须换行。
我必须在我的 C++ 程序中使用 wc 命令。我设法得到了行数:
char *envp[] = {NULL};
char *command[] = {"wc", "-l", filename.c_str(), NULL};
execve("/usr/bin/wc", command, envp);
在上面的语句之后,我有一个将“-l”替换为“-w”等等。但是我的程序在第一个 execve()
语句后立即结束。
如何让我的所有语句在 execve()
语句之后执行?
N.B: 这将是我第一次运行使用c++程序的系统命令。
提前致谢。
execve
将当前的可执行映像替换为指定的映像,因此在成功时永远不会 returns。如果你想继续执行主程序,那么你需要先fork
。或者使用像 system
函数一样乏味的东西。
我必须编写一个 c++
程序,其中 "counts the number of lines, words and the number of bytes from a text file",所有这些都必须换行。
我必须在我的 C++ 程序中使用 wc 命令。我设法得到了行数:
char *envp[] = {NULL};
char *command[] = {"wc", "-l", filename.c_str(), NULL};
execve("/usr/bin/wc", command, envp);
在上面的语句之后,我有一个将“-l”替换为“-w”等等。但是我的程序在第一个 execve()
语句后立即结束。
如何让我的所有语句在 execve()
语句之后执行?
N.B: 这将是我第一次运行使用c++程序的系统命令。
提前致谢。
execve
将当前的可执行映像替换为指定的映像,因此在成功时永远不会 returns。如果你想继续执行主程序,那么你需要先fork
。或者使用像 system
函数一样乏味的东西。