BAT文件代码可执行:
echo 当前盘符:%~d0
echo 当前盘符和路径:%~dp0
echo 当前批处理全路径:%~f0
echo 当前盘符和路径的短文件名格式:%~sdp0
echo 当前CMD默认目录:%cd%
echo 当前bat文件文件名:%~n0
其中“%cd%”可以直接在cmd窗口使用,非必须在bat文件中使用,其他几个是在bat文件中使用的
插一段git更新本目录下所有项目的脚本
@echo off
rem echo 当前盘符:%~d0
rem echo 当前盘符和路径:%~dp0
rem echo 当前批处理全路径:%~f0
rem echo 当前盘符和路径的短文件名格式:%~sdp0
rem echo 当前CMD默认目录:%cd%
rem echo 当前bat文件文件名:%~n0rem 获取文件名
set spbase=%~n0rem 替换文件名中的“[any]”为空
set "spbase=%spbase:[any]=*%"
rem 替换文件名中的“pull_”为空
set "spbase=%spbase:pull_=%"set sp=%spbase%
echo=
echo=
echo 当前目录:
echo %cd%
echo=
echo 准备开始拉取当前目录下“%sp%”目录的git项目(git pull),如需取消可直接关闭窗口
echo=
pause
clsset a=0
for /d %%s in (%sp%*) do (
set/a a=a+1
echo=
echo #########################################################################
echo ################################ BEGIN ################################
echo 开始拉取: %%s
echo #########################################################################
cd %%s
rem 测试回退:git reset --hard origin/master
git pull
echo -------------------------------------------------------------------------
echo -------------------------------- END --------------------------------
echo -------------------------------------------------------------------------
echo=
cd ../
rem 测试回退:pause
)echo=
if 0==%a% (
echo 未找到匹配“%sp%”的项目文件夹,未拉取任何项目
) else (
echo 拉取任务执行完毕!!!本次拉取项目个数: %a%
)
echo=
pause