【发布时间】:2011-01-08 00:30:06
【问题描述】:
所以我正在努力创建一个非常简单的 C 程序,它只执行 shell 命令。这是我目前所拥有的:
#include <stdio.h>
int main()
{
char input[30];
fputs("$ ", stdout);
fflush(stdout);
fgets(input, sizeof input, stdin);
system(input);
}
它有效,但仅适用于一个命令。例如,如果我编译并输入 ./cmd 我会得到 $ 提示符。如果我输入 ls 我会得到我应该得到的。但随后它退出并返回到常规系统外壳。如何在用户键入命令后返回“$”输入。
【问题讨论】: