‘wget’与‘bat 批处理’ 相结合的批量下载操作

本文介绍了如何在Windows环境下使用wget命令配合批处理脚本实现从URL列表中批量下载视频,包括脚本逻辑、文件路径管理以及使用for循环进行操作的过程。
摘要由CSDN通过智能技术生成

前言

'wget'命令是一个在Linux和类Unix操作系统中经常使用的网络命令,用途是从指定的URL下载文件。它支持HTTP、HTTPS和FTP协议,支持断点续传,可以下载整个网站,当然windows环境下也可以使用,参考地址:GNU Wget 1.21.4 for Windows

‘bat‘称为批处理脚本,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。


使用是为了什么目的?

为了简化代码的编写,不依赖其他idea,批量进行视频下载。


整体流程

download ━━━ 根文件夹
                ┗━━ download.bat   批处理文件
                ┗━━ urls.txt              url下载地址文件
                ┗━━ wget.exe           'wget'工具


批处理文件

先展示下批处理的脚本逻辑:

@echo off &setlocal enabledelayedexpansion
color 2

for /f %%a in (urls.txt) do (
set name=%%~dpa
set path=!name:https:\zeekol.net\Video\=Video\!

if not exist !path! (
	echo !path!%%~na file not existed,to create.
	mkdir !path!
) else (
	echo !path!%%~na file existed.
)

set c=!path!%%~nxa
echo %%a _to_ !c!
wget %%a -O !c!

)

pause

接下来一一解释:

setlocal enabledelayedexpansion” :设置本地为延迟扩展。就是为了能在for里面使用set的变量

color”:设置窗口内部文字颜色。

Code (Hex)Color
0black
1blue
2green
3cyan
4red
5magenta
6yellow/brown
7white
8gray
9bright blue
Abrlght green
Bbright cyan
Cbright red
Dbright magenta
Ebright yellow
Fwhite

for”:循环语法 for [参数] %%变量名 in (匹配符) do (执行的命令)
/f” :读取文件
%%a”:每一行输出内容的变量
set name=%%~dpa”:设置一个名称为name的变量,这里要注意~dpa是啥意思。

%%a文件完整信息
%%~da保留文件所在驱动器信息
%%~pa保留文件所在路径信息
%%~na保留文件名信息
%%~xa保留文件后缀信息
%%~za保留文件大小信息
%%~ta保留文件修改时间信息
%%~dpa保留文件所在驱动器和所在路径信息
%%~nxa保留文件名及后缀信息
%%~pnxa保留文件所在路径及文件名和后缀信息
%%~dpna保留文件驱动器、路径、文件名信息
%%~dpnxa保留文件驱动器、路径、文件名、后缀信息

set path=!name:https:\www.baidu.com\Video\=Video\!”:使用字符串替换功能将变量“name”中的特定字符串替换为“Video”目录。这里的目的是将URL中的目录部分替换为本地文件系统中的目录。

if not exist !path! :检查变量“path”指定的目录是否存在。

echo !path!%%~na file not existed,to create.:如果目录不存在,则输出一条消息,指示目录不存在,并准备创建该目录。

mkdir !path!:创建目录。

echo !path!%%~na file existed.:输出一条消息,指示目录已存在。

set c=!path!%%~nxa:从变量“%%a”中提取文件名和扩展名,并将其与变量“path”拼接,形成完整的文件路径和文件名,并将其赋值给变量“c”。

echo %%a _to_ !c!:输出一条消息,指示正在下载的URL和保存的文件路径和文件名。

wget %%a -O !c!:使用wget工具下载URL,并将文件保存到变量“c”指定的路径和文件名。

pause:在命令行窗口中暂停,等待用户按下任意键。


结语

下载视频的方式多种多样,对于批量下载我在临时使用中采用懒办法。此外方便快捷的语法推荐py、go等语言。


 有兴趣的小伙伴可以关注一波

 o(* ̄▽ ̄*)ブ

  • 19
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jerrt-J

希望我创作能给你带来有用的帮助

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值