shell如何实现自动交互,及su命令的具体流程

l15143093623 2014-08-09 12:41:16
写一个脚本,但脚本中的有些命令需要root权限。
在用java实现执行普通的shell命令时,均能获取到输出。但是,在执行su命令时,获取不到输入密码的提示。想了解以下su命令的具体流程。


网上说可以用expect实现这种交互。向问以下有没有别的方法(最好,不需要安装特殊的软件包)。
...全文
313 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
奔跑的路 2014-08-11
  • 打赏
  • 举报
回复
我想你可以用 system(str_cmd); 命令, 把要键盘输入的内容(id passwd) 按行 写在文本文件abc.txt里,用 转向: char str_cmd[] = "su < abc.txt"; system(str_cmd); 为了系统安全,文本文件abc.txt 由本程序自己建立,写出,命令执行完,由本程序关闭,删除(删除命令用强迫并且无提示方式)。 至于要密码输入提示,可以用命令 sudo -i 试试。
buyong 2014-08-11
  • 打赏
  • 举报
回复
expect
ljc007 2014-08-11
  • 打赏
  • 举报
回复
用sudo吧 设置成那个普通用户使用sudo不需要输入密码
帅得不敢出门 2014-08-09
  • 打赏
  • 举报
回复
java程序用root权限运行好了。

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧