java - 使用 Java 连接到远程 Windows Server 并更改远程目录,放置特定文件并在命令提示符下执行一些命令
问题描述
在这方面需要帮助。
我有一个需要自动化以下流程的要求。
从本地连接到远程服务器,更改目录并将特定文件复制到特定文件夹,从本地到远程,在命令提示符下执行一些命令,回到本地并检查 SQL Server。
本地和远程都是windows操作系统
尝试使用 psexec 如下代码所示,更改目录时出错?
公共类Test2 {
public static void main(String args[]) throws IOException, InterruptedException
{
List<String> list=new ArrayList<String>();
list.add("cmd");
list.add("/c") ;
list.add("start psexec \\\\ip_address -u dev\\username -p password cmd");
list.add("cd c:\\Operations\\Account Updater"); //changing the directory
ProcessBuilder builder =new ProcessBuilder(list);
Process p= builder.start();
String s;
System.out.println(p.getOutputStream());
BufferedReader stdInput =new BufferedReader(new InputStreamReader(p.getInputStream()));
while((s=stdInput.readLine())!=null){
System.out.println(s);
}
System.out.println(builder.command());
}
}
另外如何使用Java代码将文件从本地复制到远程?
手动我可以使用 psexec 执行所有操作。
请让我知道除了使用 psexec 来自动化此流程之外是否还有其他方法。
解决方案
推荐阅读
- c# - Blazor WebAssembly:同一组件渲染上的多个路由
- antd - antd 菜单图标 API 不工作。不渲染
- javascript - 开玩笑模拟和设置默认行为
- javascript - 如何使用 Angular 在日期范围内创建搜索过滤器?
- python - Altair 中的并排箱线图
- angular - 导出数组接口以避免“类型上不存在属性'push'的正确方法......”在Angular中
- java - Angular + Spring Boot跨域过滤器不起作用
- ios - 与会者出现 Swift 问题,无法获取姓名、电子邮件等...我不断收到错误消息
- amazon-web-services - 使用 SSM 的 CloudWatch 代理,其中实例未显示在托管实例中
- c# - 为什么此应用程序尝试连接到 SQL Server 而不是 SQLite?