C语言执行sudo命令时要导入密码,那么下面就可以自动导入密码,而不用手动输入:
#include <stdio.h>
int main(void)
{
system("echo passwd | sudo -S chmod 777 /opt/a/*");
return 0;
}
注意:passwd 即为密码,不要加双引号,|为管道命令 ,sudo 命令中的 -S 表示从标准输入(即为管道)获取密码,代替从终端获取密码。这样就不用手动输入密码了。
或者写一脚本:
#!/bin/sh
echo "passwd" | sudo -S chmod 777 /opt/a/*