31 lines
421 B
C++
31 lines
421 B
C++
#include <stdio.h>
|
|
#include <unistd.h>
|
|
|
|
int main(int argc, char** argv)
|
|
{
|
|
if (argc != 2)
|
|
{
|
|
fprintf(stderr, "usage: %s COMMAND\n", argv[0]);
|
|
return 1;
|
|
}
|
|
|
|
FILE* fp = popen(argv[1], "r");
|
|
if (fp == nullptr)
|
|
{
|
|
perror("popen");
|
|
return 1;
|
|
}
|
|
|
|
char buffer[128];
|
|
while (fgets(buffer, sizeof(buffer), fp) != NULL)
|
|
printf("%s", buffer);
|
|
|
|
if (pclose(fp) == -1)
|
|
{
|
|
perror("pclose");
|
|
return 1;
|
|
}
|
|
|
|
return 0;
|
|
}
|