【发布时间】:2018-09-22 11:28:48
【问题描述】:
我有一个批处理文件,它打开一个 URL 以下载 csv 文件,然后我需要移动该 csv 表单下载文件夹并将其重命名为另一个。
我拥有的是:
@echo off
SET CCDIR=C:\Users\(username)\Desktop
SET LOADDIR=C:\Users\(username)\Downloads
ECHO ***************************************************************************
ECHO Downloading the file
ECHO ***************************************************************************
start chrome (URL string)
:NEXT
ECHO ***************************************************************************
ECHO Move CSV file from Downloads folder to Desktop
ECHO ***************************************************************************
move %LOADDIR%\*(file string)* %CCDIR%
ren %CCDIR%\*(file string)* (new file name)
我想在同一个 bat 中执行所有操作,但只有 start chrome 正在工作,bat 忽略了 move 和 ren。
我该怎么做?
【问题讨论】:
-
使用 curl、wget 或 powershell Invoke-Webrequest 进行下载。在尝试移动和重命名之前,您的(相当混乱的)批次不会等待下载完成。
-
感谢您的快速回答 LotPings,那么您的意思是在批处理中使用 wget 命令而不是“start chrome”?那会产生同样的效果吗?
-
是的,
wget是一个无需打开网络浏览器即可从 Internet 下载文件的程序。这将使您的脚本明显更快、更便携。 -
wget 和curl 是第三方应用程序,后者也是very lastest Windows 10 version 的一部分。 Powershell 自 Windows 7 起包含并具有类似的 cmdlet Invoke-Webrequest
-
您可以使用
certutil命令下载文件。 Take a look at this example
标签: batch-file