这些批处理命令具体用法说明一下

来源:百度知道 编辑:UC知道 时间:2024/06/30 16:06:00
@echo off
if "%1"=="" (
echo 请勿直接双击本批处理,将要修改的文件拖到批处理上运行
pause
exit /b
)
if not exist %1 (
echo 找不到文件
pause
exit /b
)

cd /d %~dp1
for /f "delims=] tokens=1,*" %%a in (%1) do echo %%b>>%1_lyrics.txt
pause
高手帮介绍一下,这个批处理中各个命令的用途是怎么样的行吗?详细一点,比如说:
@ 是不显示@后面的命令
echo 回显


echo off 关闭回显.

if 判断,不多说.

%1 运行时的第一个参数,比如你的文件是1.bat,运行格式是 1.bat "c:\1.txt",此时的%1就是c:\1.txt.

pause 暂停处理,按任意键可继续.

exit 退出当前的批处理,但是不退出命令行,如果直接执行的话,就退出当前的命令行.

if not exist 同上,判断参数文件是否存在.

cd %~dp1 扩展%1变量到盘符和路径.

for /f "delims=] tokens=1,*" %%a in (%1) do echo %%b>>%1_lyrics.txt 以第一个]为分隔符,每个文件的每一行的第一个]后面的所有文字都被写入到歌词文件中.比如"[00:54.28]竟然先对我示好"这一行就将"竟然先对我示好"写入到新的文件中去.新的文件以原文件加上_lyrics为名,并且改后缀为txt.

如果没有猜错的话,这个应该是提取歌词文件的,比如1.lrc处理后的结果是1_lyrics.txt,内容即是歌词.

你怎么不去问作者,就是你问 去掉歌词文件前面时间[00:00:00]
的那个问题。