html - 如何避免在 C 中使用系统命令打印 'echo' 输出

标签 html c unix system su

system("echo 'abcpasswd' | su - NewUsr -c 'ls -ltr'");

上面的代码嵌入在我的“C”代码中,它生成一个二进制文件,稍后从 html 页面调用。 现在,上面的代码提示输入“密码”,该密码通过管道传输到命令中。但我最终在我的 html 渲染页面中看到提示“密码:”。

我该如何解决这个问题?我不希望在我的网页上看到提示“密码:”。

最佳答案

出于安全原因,su 不会在交互式终端以外的任何地方获取密码。选项 - 仅用于完全登录,不适用于标准输入读取。

您可以使用您可以更好地控制的sudo(请阅读您的操作系统手册),请注意在非交互模式下使用此类被认为是有害的...

关于html - 如何避免在 C 中使用系统命令打印 'echo' 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38073271/

相关文章:

检查二维数组中有多少个主数

linux - Unix 中 ls -lsh 中的“总计”

regex - 使用 grep 查询选择性文件

html - 将文字置于图像之上

c++ - 像这样使用宏合法吗?

javascript - 具有动态高度和绝对位置的子 DIV - 将高度赋予父 DIV

c - C中双向链表的初始化,指针

c - Unix信号如何工作?

jquery - SquareSpace Bedford - 每页更改 Logo ,在页面外添加文本等

jquery - 中心效应