如何从 Java 向 sudo 提供 root 密码?

2024-01-07

我正在尝试编写一个小型 Java 应用程序来覆盖我的/etc/resolv.conf文件(我使用的是 Ubuntu 12.04)。为此,我需要提供我的root密码:

myUser@myMachine:~$ sudo vim /etc/resolv.conf 
[sudo] password for myUser: *****

因此,执行此操作的过程分为三个步骤:

  1. Type sudo vim /etc/resolv.conf在航站楼
  2. 终端要求我输入我的root密码
  3. 我输入密码并按[Enter]

根据我研究的所有内容,我可以使用以下内容来执行上面的步骤 1:

try {
    String installTrickledCmd = "sudo vim /etc/resolv.conf";
    Runtime runtime = Runtime.getRuntime();
    Process proc = runtime.exec(installTrickledCmd);
}
catch(Throwable throwable) {
    throw new RuntimeException(throwable);
}

但是当执行时,shell 将提示我的 Java 进程输入密码。我不知道如何等待这个(上面的步骤 #2),然后将我的密码提供回 shell(上面的步骤 #3)。提前致谢。


你尝试过 -S 吗?

$echo mypassword | sudo -S vim /etc/resolv.conf

来自男人:

The -S (stdin) option causes sudo to read the password from the standard input 
instead of the terminal device.  The password must be followed by a newline 
character.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 Java 向 sudo 提供 root 密码? 的相关文章

  • 在Windows上安装Java 11 OpenJDK(系统路径问题)

    Java 11 最近发布了 众所周知 这个版本没有安装文件 当然 要在没有安装程序的情况下安装 Java 我将系统设置 PATH 和 JAVA HOME 设置为解压缩 Java 11 的文件夹的地址 根据对类似问题的已接受回复建议 唯一的事
  • 如何测试 JUnit 测试的 Comparator?

    我需要测试 Compare 方法 但我对如何测试感到困惑 我可以看看该怎么做吗 public class MemberComparator implements Comparator
  • 如何在apache 2.4.6上安装apxs模块

    我刚刚用过apt get update我的 apache 已更新为2 4 6 我想安装 apxs 来编译模块 但收到此错误 The following packages have unmet dependencies apache2 pre
  • 如何查找 Android 设备中的所有文件并将它们放入列表中?

    我正在寻求帮助来列出 Android 外部存储设备中的所有文件 我想查找所有文件夹 包括主文件夹的子文件夹 有办法吗 我已经做了一个基本的工作 但我仍然没有得到想要的结果 这不起作用 这是我的代码 File files array file
  • java.io.IOException: %1 不是有效的 Win32 应用程序

    我正在尝试对 XML 文档进行数字签名 为此我有两个选择 有一个由爱沙尼亚认证中心为程序员创建的库 还有一个由银行制作的运行 Java 代码的脚本 如果使用官方 认证中心 库 那么一切都会像魅力一样进行一些调整 但是当涉及到银行脚本时 它会
  • 在数据流模板中调用 waitUntilFinish() 后可以运行代码吗?

    我有一个批处理 Apache Beam 作业 它从 GCS 获取文件作为输入 我的目标是根据执行后管道的状态将文件移动到两个 GCS 存储桶之一 如果管道执行成功 则将文件移动到存储桶 A 否则 如果管道在执行过程中出现任何未处理的异常 则
  • HDFS:使用 Java / Scala API 移动多个文件

    我需要使用 Java Scala 程序移动 HDFS 中对应于给定正则表达式的多个文件 例如 我必须移动所有名称为 xml从文件夹a到文件夹b 使用 shell 命令我可以使用以下命令 bin hdfs dfs mv a xml b 我可以
  • hibernate总是自己删除表中的所有数据

    您好 我正在开发一个 spring mvc 应用程序 它使用 hibernate 连接到存储文件的 mysql 数据库 我有两个方法 一个方法添加我选择的特定文件路径中的所有文件 另一种方法调用查询以返回从 mysql 存储的文件列表 问题
  • Microsoft Graph 身份验证 - 委派权限

    我可以使用 Microsoft Graph 访问资源无需用户即可访问 https developer microsoft com en us graph docs concepts auth v2 service 但是 此方法不允许我访问需
  • 在具有相同属性名称的不同数据类型上使用 ModelMapper

    我有两节课说Animal AnimalDto我想用ModelMapper将 Entity 转换为 DTO 反之亦然 但是对于具有相似名称的一些属性 这些类应该具有不同的数据类型 我该如何实现这一目标 动物 java public class
  • Java中接口作为方法参数

    前几天去面试 被问到了这样的问题 问 反转链表 给出以下代码 public class ReverseList interface NodeList int getItem NodeList nextNode void reverse No
  • 尝试使用 Ruby Java Bridge (RJB) gem 时出现错误“无法创建 Java VM”

    我正在尝试实现 Ruby Java Bridge RJB gem 来与 JVM 通信 以便我可以运行 Open NLP gem 我在 Windows 8 上安装并运行了 Java 所有迹象 至少我所知道的 都表明 Java 已安装并可运行
  • 使用 Flyway 和 Hibernate 的 hbm2ddl 在应用程序的生命周期中管理数据库模式

    我正在开发 Spring Hibernate MySql 应用程序 该应用程序尚未投入生产 我目前使用 Hibernatehbm2ddl该功能对于管理域上的更改非常方便 我也打算用Flyway用于数据库迁移 在未来的某个时候 该应用程序将首
  • 有谁知道在哪里定义硬件、版本和序列号。 /proc/cpuinfo 的字段?

    我想确保我的 proc cpuinfo 是准确的 目前它输出 Hardware am335xevm Revision 0000 Serial 0000000000000000 我可以在代码中的哪里更改它以给出实际值 这取决于 Linux 的
  • Java - 不要用 bufferedwriter 覆盖

    我有一个程序可以将人员添加到数组列表中 我想做的是将这些人也添加到文本文件中 但程序会覆盖第一行 因此这些人会被删除 如何告诉编译器在下一个空闲行写入 import java io import java util import javax
  • 将 JTextArea 内容写入文件

    我在 Java Swing 中有一个 JTextArea 和一个 提交 按钮 需要将textarea的内容写入一个带有换行符的文件中 我得到的输出是这样的 它被写为文件中的一个字符串 try BufferedWriter fileOut n
  • 将2-3-4树转换为红黑树

    我正在尝试将 2 3 4 树转换为 java 中的红黑树 但我无法弄清楚它 我将这两个基本类编写如下 以使问题简单明了 但不知道从这里到哪里去 public class TwoThreeFour
  • jpegtran 优化而不更改文件名

    我需要优化一些图像 但不更改它们的名称 jpegtran copy none optimize image jpg gt image jpg 但是 这似乎创建了 0 的文件大小 当我对不同的文件名执行此操作时 大小仍然完全相同 怎么样 jp
  • com.jcraft.jsch.JSchException:身份验证失败

    当我从本地磁盘上传文件到远程服务器时 出现这样的异常 com jcraft jsch JSchException Auth fail at org apache tools ant taskdefs optional ssh Scp exe
  • ubuntu:升级软件(cmake)-版本消歧(本地编译)[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我的机器上安装了 cmake 2 8 0 来自 ubuntu 软件包 二进制文件放置在 usr bin cmake 中 我需要将 cmake 版本至少

随机推荐

  • _var 和 self.var 之间的区别

    随着所有这些新的 ARC 内容 不属于 NDA 的出现 处理属性的默认设置似乎是在实现文件中显式设置没有 ivar 的属性 直到您使用以下内容综合它 synthesize var var 设置变量的最佳实践是什么 我知道之间的区别var a
  • 将 [(key: String, value: String)] 转换为 [String:String]

    我想将 key String value String 转换为 String String 可以吗 如果是的话我怎么做 谢谢 var KeyValuePair key String value String key 2017 01 04 v
  • 检查输入时出错:预期dense_input的形状为(21,),但得到的数组的形状为(1,)

    如何修复输入数组以满足输入形状 我尝试转置输入数组 如上所述here https stackoverflow com questions 50336110 valueerror error when checking expected de
  • ACE oleDb 驱动程序无法处理巨大的 Excel 文件

    ACE OLEDB 驱动程序对于较大的文件是否存在任何已知问题 我使用下面的代码来检索 400Mb xls 文件中的工作表 public string GetWorkSheets var connectionString Provider
  • C# 中 (int) 和 Convert.toint32 之间的区别

    当我将对象转换为 int 时 int object 然后当对象值为 0 时 他会给我错误 指出特定的强制转换无效 当我将对象转换为 int 时 convert toint32 object 然后他工作并给我 0 意味着演员阵容有效 我想知道
  • 如何在 C++ 中逐行读取文件中的整数组

    我有一个文本文件 每一行都有一个或多个整数 用空格分隔 我怎样才能用 C 优雅地阅读这个内容 如果我不关心行 我可以使用 cin gt gt 但整数在哪一行很重要 输入示例 1213 153 15 155 84 866 89 48 12 1
  • WP REST API 自定义 POST 端点不工作,404 错误

    我正在编写一个插件 但我在使用自定义端点时遇到了一些问题 该端点从应用程序前端 Angular 接收数据 并将向其传递另一个函数来过滤一些数据 我对产品数据库的 GET 请求工作得很好 但 POST 只返回 404 错误 如果我在 Inso
  • 使用淡入淡出动画重绘 UIView?

    In TwUI 有一个方法叫做redraw on TUIView 它强制视图重绘 但它还带有视图的新旧状态之间的自由淡入淡出动画 我想知道在正常情况下是否可能发生类似的事情UIView 基本上 我如何重绘视图 setNeedsDisplay
  • STM32的HAL中实现单按、长按和双按功能

    我正在尝试实现单击 双击和长按功能来执行不同的功能 到目前为止 我已经理解了单击和长按的逻辑 但我不知道如何检测双击 至于代码 我使用计数器实现了单击和长按 但代码仅停留在第一个 if 条件上 bool single press false
  • 渲染画布时单词重叠

    我有一个很长的文本要渲染到画布上 并且单词在 Safari 中重叠且混乱 但在 Chrome 中完美运行 我正在使用最新版本的 html2canvas 库 v1 0 0 rc 3 这是 safari 中的输出 https i stack i
  • 错误消息:看起来您缺少一些运行 Electron 所需的依赖项

    全局安装 electro forge 后npm install g electron forge我在与 electro forge 相关的终端中输入的任何命令都会显示以下消息 它似乎缺少运行 Electron 所需的一些依赖项 确保您安装了
  • 根据国家地理 IP 将观众重定向到其他网站

    假设我有一个网站 www abc com featured abc 并且想将除马来西亚以外其他国家 地区的观众重定向 仅该链接 到 YouTube 视频 但 www abc com 仍然是全球性的 是的 我的服务器已经使用 geoip 模块
  • 使用httpwebrequest从网站获取图像到byte[]

    我想读取网站上 PNG 文件的原始二进制文件并将其存储到 byte 中 到目前为止我有这样的内容 Uri imageUri new Uri http www example com image png Create a HttpWebreq
  • 使用 java processbuilder 运行 bat 文件

    我正在尝试使用 java 进程生成器执行 bat 文件 但它不会启动该进程 请告诉我我在这里做错了什么 当我用 file sh 替换 file bat 时 这段代码在 Linux 环境下工作得很好 final ArrayList
  • Python 随机列表理解

    我有一个类似于以下内容的列表 1 2 1 4 5 2 3 2 4 5 3 1 4 2 我想从此列表中创建 x 个随机元素的列表 其中所选元素都不相同 困难的部分是我想通过使用列表理解来做到这一点 如果 x 3 可能的结果是 1 2 3 2
  • Rails 模型回调(创建/更新后)attribute_was 不起作用

    我正在将 Rails 5 1 应用程序迁移到 Rails 5 2 1 在我的模型中 我在创建或更新模型后使用回调来创建活动日志 很遗憾todo name and todo name was始终相同 当前值 这适用于每个属性和每个模型 还ch
  • 如何为 JMenu 子菜单设置加速器?

    我有一个用户请求将加速器添加到子菜单 JMenu 这将允许用户按下快捷键并使相应的子菜单 折叠 显示其包含的菜单项 我不记得每个人都见过这样的东西 无论是在 Java 还是任何其他语言中 我们的应用程序是使用 Swing 用 Ja va 编
  • 了解 TypeError:获得关键字参数的多个值

    我尝试了不同的方法来使用 args 调用该方法 下面是我的代码片段 def total name args if args print s has total money of Rs d name sum args else print s
  • 如何使用 Linq 的聚合函数 C# 添加到列表

    我有一个类型的对象集合 我想将其转换为不同类型 这可以使用 foreach 轻松完成 但我想弄清楚如何使用 Linq 的聚合函数来完成此操作 问题是所有聚合示例都使用行字符串或 int 类型 它们支持 运算符 我希望累加器类型是一个列表 它
  • 如何从 Java 向 sudo 提供 root 密码?

    我正在尝试编写一个小型 Java 应用程序来覆盖我的 etc resolv conf文件 我使用的是 Ubuntu 12 04 为此 我需要提供我的root密码 myUser myMachine sudo vim etc resolv co