关于批处理的一些笔记
9年前 (2015-01-11) 作者:iMoke 分类:转载技术·常用技巧 阅读次数:3443 评论(0)独立压缩各目录
for /d %a in (*) do C:\Progra~1\WINRAR\RAR.EXE a -k -r -s -m1 %a.rar %a独立解压各目录
for 
独立压缩各目录
for /d %a in (*) do C:\Progra~1\WINRAR\RAR.EXE a -k -r -s -m1 %a.rar %a
独立解压各目录
for %a in (*.rar) do C:\Progra~1\WINRAR\RAR.EXE x -y %a
获取当前路径
@echo off setlocal EnableDelayedExpansion echo 当前正在运行的批处理文件所在路径:!cd! pause @echo off echo 当前目录是:%cd% pause @echo off :: set "abc=%cd%" echo 当前正在运行的批处理文件所在路径:%~dp0 pause @echo off echo 当前的盘符及路径:%~dp0 echo 当前的盘符及路径的短文件名格式:%~sdp0 pause
获取当前文件夹名
@echo off set "lj=%~p0" echo lj=%lj% set "lj=%lj:\= %" echo lj=%lj% for %%a in (%lj%) do set wjj=%%a echo lj=%lj% echo a=%a% echo wjj=%wjj% echo 文件夹是:%wjj% pause>nul
获取当前文件名
@echo off echo %~0 echo %~dp0 pause>nul
关于批处理的0,相对路径
0念 零 ,代表你的批处理本身。 d p是FOR 命令的扩展。 %~f0 将 %I 扩展到一个完全合格的路径名 %~d0 仅将 %I 扩展到一个驱动器号 %~p0 仅将 %I 扩展到一个路径 %~n0 仅将 %I 扩展到一个文件名 %~x0 仅将 %I 扩展到一个文件扩展名 %~s0 扩展的路径只含有短名 %~a0 将 %I 扩展到文件的文件属性 %~t0 将 %I 扩展到文件的日期/时间 %~z0 将 %I 扩展到文件的大小 看到的就是P盘D路径0当前目录 如你的a.bat文件在d:\123\a.bat %~pd0就是d:\123 %0就是 d:\123\a.bat a.bat里的内容为,自己运行看吧。 echo echo ok>%~pdo pause
DOS批处理中%cd%和%~dp0的异同分析
http://www.jb51.net/article/30528.htm
除非注明,发表在“傲孤漠客”的文章『关于批处理的一些笔记』版权归iMoke所有。
转载请注明出处为“本文转载于『傲孤漠客』原地址https://www.imoke.org/post/study-for-bats.html”
评论
发表评论