0

我有一个包含以下命令的 SCR 文件

open myftp.myserver.com
myusername
mypassword
lcd "c:\myfolder"
cd webfolder
get myfile09202012

我每周运行一次带有 BAT 文件的脚本作为 Windows 任务。本周,要下载的文件名为“myfile09202012”。下周,文件名将是“myfile09272012”。我将如何创建一个脚本来每周自动生成新文件名?

4

2 回答 2

1

将此批处理文件的输出通过管道传输到您的脚本文件,然后以正常方式运行生成的脚本。

@echo off
echo open myftp.myserver.com
echo myusername
echo mypassword
echo lcd "c:\myfolder"
echo cd webfolder
for /f "tokens=2-4 delims=/ " %%a in ('echo %date%') do echo get myfile%%a%%b%%c

它将使用当前日期生成文件名

要将整个批处理合并到另一个批处理文件中,最终会是这样的:

@ECHO OFF
cd c:\myfolder
echo open myftp.myserver.com > mySCRfile.SCR 
echo myusername >> mySCRfile.SCR 
echo mypassword >> mySCRfile.SCR 
echo lcd "c:\myfolder" >> mySCRfile.SCR 
echo cd webfolder >> mySCRfile.SCR 
for /f "tokens=2-4 delims=/ " %%a in ('echo %date%') do echo get myfile%%a%%b%%c >> mySCRfile.SCR 
ftp -s:mySCRfile.SCR 

或者

@ECHO OFF
cd c:\myfolder
call MakeTheScr > mySCRfile.SCR 
ftp -s:mySCRfile.SCR 
于 2012-09-18T16:37:13.087 回答
0

我最终使用了以下约定

get myfile%date:~4,2%%date:~7,2%%date:~10%

如果您输入命令 'echo %date%',您将收到格式为 'Wed 10/10/2012' 的今天日期字符串 '%date:~4,2%' 在第 4 个占位符处返回上述格式,并且返回接下来的 2 个字符。

于 2012-10-10T15:57:24.500 回答