使用带有更改名称文件的wget或curl

时间:2014-10-11 14:43:38

标签: regex flash cmd filenames wget

首先请原谅我的英语不好,我会尽力理解。

我正在使用批处理文件(Windows,cmd.exe)在我的计算机上检索并静默安装Adobe Flash。 该批处理效果很好,但是当Adobe服务器上发生重大版本更改时,我遇到了问题。 这是命令行批处理:

@echo off
setlocal enableextensions

md c:\temp\flash
pushd c:\temp\flash

wget -nH --cut-dirs=5 -r --timestamping http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_15_plugin.exe
wget -nH --cut-dirs=5 -r --timestamping http://download.macromedia.com/get/flashplayer/current/licensing/win/install_flash_player_15_active_x.exe

echo Closing browsers
pause
taskkill /f -im firefox.exe -im iexplore.exe

install_flash_player_15_plugin.exe -install -au 2
install_flash_player_15_active_x.exe -install -au 2

popd

setlocal disableextensions
pause

当Flash升级到下一个版本时,文件名会从install_flash_player_15_active_x.exe更改 至 install_flash_player_16_active_x.exe 并且必须手动更正批次,否则它会粘在旧版本上。

有没有办法用通配符或一些正则表达式替换版本号,以便wget在名称更改时检索最新文件? 或者至少,是否有任何Windows兼容的命令行工具解析服务器上的文件名,找到最新的并将其作为wget(或cURL)的变量传递?

谢谢

1 个答案:

答案 0 :(得分:0)

您不需要正则表达式来获取IE和Firefox的当前版本的Flash。只需将网址更改为

即可

对于Firefox:http://download.macromedia.com/pub/flashplayer/current/support/install_flash_player.exe 对于IE:http://download.macromedia.com/pub/flashplayer/current/support/install_flash_player_ax.exe

wget -nH --cut-dirs=5 -r --timestamping http://download.macromedia.com/pub/flashplayer/current/support/install_flash_player.exe
wget -nH --cut-dirs=5 -r --timestamping http://download.macromedia.com/pub/flashplayer/current/support/install_flash_player_ax.exe