小编Cor*_*068的帖子

使用PowerShell从FTP下载最新文件

我正在开发一个PowerShell脚本,它将从FTP站点提取文件.文件每小时上传到FTP站点,所以我需要下载最新的文件.我目前的代码下载了今天的所有文件而不是一个文件.如何使其仅下载最新文件?

这是我目前使用的代码

$ftpPath = 'ftp://***.***.*.*'
$ftpUser = '******'
$ftpPass = '******'
$localPath = 'C:\Temp'
$Date = get-date -Format "ddMMyyyy"
$Files = 'File1', 'File2'

function Get-FtpDir ($url, $credentials)
{
  $request = [Net.FtpWebRequest]::Create($url)
  if ($credentials) { $request.Credentials = $credentials }
  $request.Method = [System.Net.WebRequestMethods+FTP]::ListDirectory
  (New-Object IO.StreamReader $request.GetResponse().GetResponseStream()) -split "`r`n" 

}

$webclient = New-Object System.Net.WebClient 
$webclient.Credentials = New-Object System.Net.NetworkCredential($ftpUser,$ftpPass)  
$webclient.BaseAddress = $ftpPath

Foreach ( $item in $Files )
{
    Get-FTPDir $ftpPath $webclient.Credentials |
      ? { $_ -Like $item+$Date+'*' } |
      % {

          $webClient.DownloadFile($_, (Join-Path …
Run Code Online (Sandbox Code Playgroud)

ftp powershell ftpwebrequest

5
推荐指数
1
解决办法
2556
查看次数

在SQL中仅选择表名

我在表中有一列具有表的完整位置(MyServer.MyDatabase.dbo.MyTable).我只想为此选择表名,以便我可以将它加入另一个表(MyTable).

任何帮助表示赞赏.

sql sql-server

2
推荐指数
1
解决办法
83
查看次数

从PowerShell格式化XML

我有一个PowerShell脚本,它运行一个返回XML的存储过程.然后我将XML导出到一个文件中,但是当我打开文件时,每行在结尾处有3个点,并且该行未完成.这是使用out-file.

当我使用Export-Clixml从查询返回的XML被转储到一个<props>不是我的标签之一的标签中.

我不确定从哪里开始以原始格式保存我的XML.

我使用的PowerShell脚本与此类似:

$Date = Get-Date -format "yyyyMMdd_HHmm" 
$File = "C:\Temp\MyFile"+$Date+".xml"

$Query = "exec dbo.usp_MyProc"

Invoke-Sqlcmd -Query $Query -database MyDatabase -ServerInstance MyServer | out-file $File -Encoding utf8 
Run Code Online (Sandbox Code Playgroud)

xml powershell

2
推荐指数
1
解决办法
6136
查看次数

标签 统计

powershell ×2

ftp ×1

ftpwebrequest ×1

sql ×1

sql-server ×1

xml ×1