happy_boy 发表于 2018-9-1 11:58:24

通过PowerShell批量上传FTP文件

  懒才是第一生产力,有个用户经常需要上传一些文件到FTP上,不胜其烦,苦于没有好方法,只能默默忍受。
  为了帮助他释放双手,这里写了一个批量上传文件到FTP服务器的脚本
  Function Upload-FTPFile{
  #定义参数
  param(
  $FTPServer,
  $Folder
  )
  $WebClient = New-Object System.Net.WebClient
  $WebClient.Credentials = New-Object System.Net.NetworkCredential("anonymous","anonymous@localhost")
  #筛选上次写入时间在10分钟后的文件(因为我的脚本是10分钟的执行间隔)
  $Files = Get-ChildItem -LiteralPath $Folder -Recurse -File | Where-Object {$.LastWriteTime -ge (Get-Date).AddMinutes(-10)}
  #遍历文件,定义URI,然后执行上传文件的方法
  $Files | Foreach {
  $URI = New-Object System.Uri($FTPServer+$.Name)
  $WebClient.UploadFile($URI, $_.FullName)
  }
  }
  #执行!
  Upload-FTPFile -FTPServer ftp://127.0.0.1:2121/reportfile/-Folder "\192.168.0.1\C$\reportfile"

页: [1]
查看完整版本: 通过PowerShell批量上传FTP文件