这是我的程序,似乎没有用。有时我认为它适用于\0
或\r
而不是\n
,但我想这是因为我已经在运行此程序的终端上执行了sudo命令,因此它没有不要提示我输入密码。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
FILE* pipe = popen("sudo -S ls", "w");
pwrite(pipe,"mypass\n");
pclose(pipe);
return 0;
}
我哪里错了?我该如何解决?感谢。
答案 0 :(得分:1)
我刚刚找到了一个似乎有效的解决方法。谢谢大家,他们调查了这个问题。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
FILE* pipe = popen("echo mypass | sudo -S ls", "w");
pclose(pipe);
return 0;
}