Windows批处理脚本url解码

Clo*_*ith 4 windows batch-file

我有一个批处理脚本在我的网络上为我触发vlc,问题是它是基于浏览器中的URL打开的.浏览器会自动将20%代替常规的空间,我需要用常规的空间又在我的批处理脚本到VLC发送的文件路径之前更换此.

这是我的代码;

@echo off
set str=%1
set str=%str:~8%
set str=%str:%%20= %
START /D "C:\Program Files\VideoLAN\VLC\" vlc.exe %str%
pause
Run Code Online (Sandbox Code Playgroud)

值得一提的是,这将在Windows 7和/或vista系统上运行.

Joe*_*oey 8

@echo off
setlocal enabledelayedexpansion
set str=%~1
set str=%str:~7%
set str=!str:%%20= !
"C:\Program Files\VideoLAN\VLC\vlc.exe" "%str%"
pause
Run Code Online (Sandbox Code Playgroud)

也可以自由修复其他一些事情.如果脚本在参数周围用引号运行,它总是有一个尾随".延迟扩展为您提供了第二组变量分隔符,避免了麻烦%.此外,start根据我的意见,我不需要,除非您严格依赖VLC将自己的目录作为其启动路径.