【问题标题】:Powershell tasks from local machine to remote machine从本地机器到远程机器的 Powershell 任务
【发布时间】:2017-01-16 19:49:23
【问题描述】:
我正在从本地机器上的远程机器上执行以下任务:
- 创建/删除/修改某些目录
- 将某些文件夹从本地计算机复制到远程计算机
- 使用非交互式选项静默安装某些 .exe
- 执行一些批处理文件
我想在 PowerShell 中编写一个脚本。 PowerShell 新手。我对“PowerShell Remoting”等术语进行了一些基本调查。
我需要寻找什么?相关的例子会有所帮助,我应该在哪里寻找这些?
【问题讨论】:
标签:
powershell
powershell-2.0
powershell-3.0
powershell-remoting
【解决方案1】:
读自docs on MSDN:
要在远程计算机上运行单个命令,请使用 ComputerName 参数。要运行一系列共享数据的相关命令,请使用 New-PSSession cmdlet 在远程计算机上创建 PSSession(持久连接),然后使用 Invoke-Command 的 Session 参数运行 PSSession 中的命令。要在断开连接的会话中运行命令,请使用 InDisconnectedSession 参数。要在后台作业中运行命令,请使用 AsJob 参数。
所以基本上你应该这样做:
$session = New-PSSession
Invoke-Command -Session $session -FilePath <PathToScript>