-2
我知道如何在C中做到这一点,但如何在Go中做到这一点?一个程序,需要一个命令作为输入,并在终端运行它
这是我使用的代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_CMN_LEN 100
int main(int argc, char *argv[])
{
char cmd[MAX_CMN_LEN] = "", **p;
if (argc < 2) /*no command specified*/
{
fprintf(stderr, "Usage: ./program_name terminal_command ...");
exit(EXIT_FAILURE);
}
else
{
strcat(cmd, argv[1]);
for (p = &argv[2]; *p; p++)
{
strcat(cmd, " ");
strcat(cmd, *p);
}
system(cmd);
}
return 0;
}
在C中,我将通过传递'argc'到'execvp'而不是调用做到这一点'系统',它将命令shell解释。你想从'go'中选择哪种行为? –
@WilliamPursell我想做同样的事情,但使用GOlang。我一直在做一些研究,发现可以使用go提供的ssh包来完成。但我无法弄清楚究竟如何? –