【问题标题】:FTP date variable to grab ftp fileFTP 日期变量来获取 ftp 文件
【发布时间】:2019-01-02 15:59:24
【问题描述】:

我正在尝试编写一个从 ftp 站点抓取文件的脚本。

我遇到的问题是如何获取带有日期的文件。例如,在 1 月 1 日,我们运行 mar2019。 2 月 1 日将运行 2019 年 4 月。

我正在尝试弄清楚如何编写一些东西来自动执行此操作,但无法弄清楚如何获取正确的日期文件。

对此的任何帮助将不胜感激。

u.ftp

open ftp.site.com 
username
password
mget 'Name.Name.RENEWALS.MAR2019'
disconnect
quit

运行

ftp -i -s:u.ftp

【问题讨论】:

  • 这个(Get-Date).AddMonths(2).ToString('MMMyyyy') 将给出current month plus 2 的简称,加上年份编号。现在,我得到Mar2019
  • 你还没有发布脚本! [grin] 我不知道你会把代码放在我从未见过的脚本中的什么地方......
  • u.ftp 是 ftp.exe 程序的命令输入文件。它不是人们通常所说的脚本。 [grin] 专有文件 中没有用于运行 powershell 代码的位置。 ///// 您需要编写一个 PoSh 脚本,通过更改 mget 行来修改该文件。

标签: powershell cmd ftp


【解决方案1】:

将变量插入模板的概念和
在批处理/powershell中将其写入文件是相同的。

由于在 PowerShell 中获取/格式化日期更容易,因此此处的字符串用于模板:

## Q:\Test\2019\01\02\SO_54009396.ps1

$Month = (Get-Date).AddMonths(2).ToString('MMMyyyy')
$ftpScript = '.\u.ftp'
@"
open ftp.site.com 
username
password
mget 'Name.Name.RENEWALS.$Month'
disconnect
quit
"@ | Set-Content $ftpScript

&ftp -i -s:$ftpscript

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-17
    • 1970-01-01
    • 2011-03-21
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    • 1970-01-01
    • 2011-05-26
    相关资源
    最近更新 更多