system("echo 'abcpasswd' | su - NewUsr -c 'ls -ltr'");
上面的代码嵌入在我的“C”代码中,它生成一个二进制文件,稍后从 html 页面调用。 现在,上面的代码提示输入“密码”,该密码通过管道传输到命令中。但我最终在我的 html 渲染页面中看到提示“密码:”。
我该如何解决这个问题?我不希望在我的网页上看到提示“密码:”。
最佳答案
出于安全原因,su
不会在交互式终端以外的任何地方获取密码。选项 -
仅用于完全登录,不适用于标准输入读取。
您可以使用您可以更好地控制的sudo
(请阅读您的操作系统手册),请注意在非交互模式下使用此类被认为是有害的...
关于html - 如何避免在 C 中使用系统命令打印 'echo' 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38073271/