执行此命令的最佳方法是什么:在我的C程序中“sudo cat /var/log/auth.log | grep Accepted”? 我试着用:
sprintf(command_result,"sudo cat /var/log/auth.log | grep Accepted");
但它显然不起作用。
答案 0 :(得分:1)
您无法使用sprintf()
至少<{1}}执行命令
修正:
system()
答案 1 :(得分:0)
您可以使用pipe
执行命令FILE *fp;
fp=popen(command_result,"r");
然后您可以从管道fp
读取命令输出,就像您从fgets()
或fread()
...
顺便说一句,如果sudo命令中需要密码,则无法执行sudo命令