powershell - 使用 powershell 远程执行文件
问题描述
我正在尝试使用 Invoke-Command 远程运行批处理文件
PS C:\Users\ale> Invoke-Command -ComputerName SERVER -ScriptBlock { Invoke-Expression -Command:"cmd.exe /c 'C:\Test\Extract.bat'" }
批处理文件应该在 C:\Test\ 中输出 3 个文件,并且在本地运行良好。当我执行上面的命令时,这是我在 powershell 中收到的输出
NotSpecified: (:String) [], RemoteException
+ CategoryInfo : NotSpecified: (:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
+ PSComputerName : SERVER
1_03102021.csv
2_03102021.csv
3_03102021.csv
当我检查远程目录中没有文件时。请问有什么建议吗?
解决方案
要在路径没有空格的powershell中调用bat文件,您可以直接调用它
PS C:\> c:\temp\bat.bat
如果路径/名称包含空格,请引用路径并使用命令调用运算符&
PS C:\> & "c:\temp\bat with spaces.bat"
所以对于你的命令,它只是
Invoke-Command -ComputerName SERVER -ScriptBlock { C:\Test\Extract.bat }
推荐阅读
- java - 从日期和数据库中获取时间,然后在 java 中比较这些时间
- mysql - 将我现有的日期时间列更新为我在 mysql 中的相应时区
- javascript - 是否可以在 javascript 中删除 async/await 并使异步透明?
- javascript - 如何在javascript中停止事件捕获?
- node.js - VS Code 调试在 createScript 函数中的 vm.js 处停止
- php - 如何将 CSS 类分配给 WooCommerce 中的库存数量?
- javascript - 在画布中查找多边形的坐标
- wxpython - wxPython:在 wx.TextCtrl 中获取旧值和插入点
- php - php从表中选择有限数量的数据并按日期排序以进行延迟加载
- c# - C# 查找 ToolStripButtons