当前位置:   article > 正文

powershell远程拷贝文件到windows 服务器

powershell远程拷贝文件到windows 服务器

在PowerShell中,如果你要在本地机器和远程Windows服务器之间拷贝文件,可以使用Copy-Item命令配合Invoke-Command(对于远程执行)或New-PSSession(用于创建持久会话后传输文件)。这里是一个使用Copy-Item通过临时会话远程拷贝文件的例子:

  1. # 定义远程服务器信息
  2. $remoteComputerName = "RemoteServer"
  3. $credential = Get-Credential -UserName "username" -Message "Enter the password"
  4. # 指定要复制的本地文件路径和远程目标路径
  5. $localFilePath = "C:\Local\File.txt"
  6. $remoteFolderPath = "C:\Remote\Path"
  7. # 创建一个临时PSSession并复制文件
  8. $session = New-PSSession -ComputerName $remoteComputerName -Credential $credential
  9. Copy-Item -Path $localFilePath -Destination "$($remoteFolderPath)\File.txt" -ToSession $session
  10. # 关闭PSSession
  11. Remove-PSSession $session

如果远程服务器已经配置了WinRM服务,并且允许无交互式登录,上述脚本将能够正常工作。

另外,如果远程服务器启用了PSRemoting且信任源主机,你也可以直接使用如下命令进行单次操作而不必创建会话:

  1. # 定义远程服务器信息
  2. $remoteComputerName = "RemoteServer"
  3. $credential = Get-Credential -UserName "username" -Message "Enter the password"
  4. # 指定要复制的本地文件路径和远程目标路径
  5. $localFilePath = "C:\Local\File.txt"
  6. $remoteFolderPath = "C:\Remote\Path"
  7. # 直接通过Invoke-Command进行远程拷贝
  8. Invoke-Command -ComputerName $remoteComputerName -Credential $credential `
  9. -ScriptBlock {
  10. param($localPath, $remotePath)
  11. Copy-Item -Path $using:localPath -Destination "$remotePath\File.txt"
  12. } -ArgumentList @($localFilePath, $remoteFolderPath)

注意:在生产环境中,请确保你的凭据管理和网络访问策略符合安全规范。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/217686
推荐阅读
相关标签
  

闽ICP备14008679号