java - 创建脚本以重新启动主机名位于文本文件中的计算机
问题描述
我正在尝试创建一个脚本来启动命令以重新启动主机名位于 .txt 文件中的机器。我在 Jenkins 上运行它,所以理想情况下它应该在 Groovy 中,但是 shell 脚本可以工作。
我曾尝试使用 Groovy 来创建此代码。我的目标是找到 .txt 文件并将此 CMD 命令应用于它
String fileContent = new File("C:/Users/omr/Documents/Temp/test.txt").text
println fileContent
"cmd /c shutdown -r -t 0".execute(fileContent)
到目前为止,我没有任何运气,我已经研究了很多如何从 Groovy 执行 cmd 命令并且它们都声明 .execute(),但是我觉得这是不对的。
解决方案
如果您需要在 Windows 上执行此操作,请尝试使用 PsShutdown或NirCmd实用程序重新启动远程计算机。还有一个批处理文件来循环浏览您的主机名:
@echo off
for /F "tokens=*" %%A in (test.txt) do (
echo psshutdown -r -t 0 \\%%A
)
我不认为这里真的需要 Java/Groovy,可能只是作为 shell 脚本的包装器。
推荐阅读
- python - 在 Python 中绘制常量函数
- wpf - WPF 控件加载事件在创建子项之前触发
- python - 小写函数在不同的函数中不起作用
- c++ - OepnGL 采样多重纹理返回相同的纹理颜色
- c - 关系运算符和运算符的优先级
- sql - SQL 更新语句:“FROM”附近的 OperationalError
- mysql - 将负 unixtimestamp 转换为正常日期时间
- java - java.util.InputMismatchException 头疼
- java - 将 MSSQL Server 连接到 Android 应用程序时出错
- c# - Net Core:从字符串类型添加到 DbSet
如何获取 Entity Framework Core DBSet,其中输入是字符串变量名?尝试在下面获取 DBSet 类型,但改为接收 IQueryable。
这个先前的答案在 Net Core 3.0 中不起作用
资源:时间戳在线转换