DOS批处理常用脚本

来源:互联网 发布:淘宝商品搭配图片 编辑:程序博客网 时间:2024/04/28 17:23

项目文件(gif另存为zip):

http://hi.csdn.net/attachment/201107/25/0_131159522822z4.gif


:: 关闭提示@echo off:: 截取字符串(从0开始的5个字符)set fullstring=hello,worldset substr=%var:~0,5% echo %substr%:: 算数运算set  a=1set  b=2set /a c=%a% + %b%echo %c%:: 提示输入语句set /p var="设置var变量的值=":: 判断语句 (字符串相等判断)if "x%var%x" == "xx" (echo var is empty.:: 跳转语句goto :lable_var_is_empty) else (echo var is NOT empty.):lable_var_is_empty:: 判断语句 - 扩展的if /i not "abc" lss "ABC" (echo abc is NOT less than ABC) else (echo abc is less than ABC ?):: 判断语句 - 文件(夹)是否存在if exist config.ini (echo config.ini is present.) else (echo config.ini is lost.):: 判断语句 - 检查最后执行命令的结果echo this command will set errorlevel to zero.if not errorlevel 0 (echo errorlevel is %errorlevel%) else (echo errorlevel is %errorlevel%):: for 循环语句 - 打印文件(夹)列表for %%i in (*) do (echo %%i):: for 循环语句 - 递归搜索"路径G:"中的所有pdf文件for /r g: %%i in (*.pdf) do (echo %%i):: for 循环语句 - 读取文本文件中每一行记录for /f %%i in (config.ini) do (echo %%i):: for 循环语句 - 变量递增for /L %%i in (0,1,10) do (echo %%i):: for 循环语句 - 变量递减for /L %%i in (100,-1,90) do (echo %%i):: for 循环语句 - 解析字符串,提取第二个字符串for /f "tokens=2 delims=," %%i in ("hello,kitty,hello,world") do (echo %%i):: for 循环语句 - 执行命令的结果作为集合for /f "delims==" %%i in ('set') do (echo %%i):: 结束标签:lable_end_of_program:: 调试暂停pause:: 打开提示@echo on


2011-9-13更新一个片段

:: for 循环语句 - 获取当期时间戳(注意:需要管理员权限)for /f "skip=1 delims=." %%i in ('wmic os get LocalDateTime') do (    set raw_string=%%i):: 提取 年 月 日 时 分 秒set year=%raw_string:~0,4%set month=%raw_string:~4,2%set day=%raw_string:~6,2%set hour=%raw_string:~8,2%set minute=%raw_string:~10,2%set second=%raw_string:~12,2%:: 测试结果echo %year%-%month%-%day% %hour%:%minute%:%second%

2011-9-28 更新一个片段

:: 更改当前目录到脚本所在位置cd %~dp0

2011-11-1 更新一个片段

:: WinSCP 命令行复制文件到远程机器(winsshd, sshd)set scp=H:\workspace\winscp435\WinSCP.comset netuser=fooset netpass=barset netip=10.0.0.1set netport=2222if exist "%scp%" ( %scp% /command^        "open %netuser%:%netpass%@%netip%:%netport%"^        "put a.txt /D/remote_dir/"^        "close"^        "exit") else (echo Error, No Such File: %scp%.)

2011-11-3 更新片段

:: forfiles 遍历目录执行命令,类似linux下的find -exec echo '{}' \;forfiles /p ".\test"^ /d +2011-11-03^ /c "cmd /c echo Deleting @file && del /f /s @path" 

2011-11-5 更新片段

:: 添加网络打印机net use \\172.16.73.110\ipc$ tiger /user:administratorrundll32 printui.dll,PrintUIEntry /in /n \\172.16.73.110\HPLaserJ /q /y

愚蠢的xcopy /t用法

rem 连同文件夹结构一起复制文件的命令rem linux一个cp -rf 搞定rem windows下那个叫别扭啊xcopy /Y /e /s src destrem 一定要确保dest已经创建哦

使用forfiles(win server 2003 支持)执行命令的时候要注意 执行路径

forfiles /s /m include /c "%comspec% /c echo %cd% && xcopy /Y /e /s . %cd%\include"

删除svn文件夹
Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]@="Delete SVN Folders"[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]@="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""

白领定时休息脚本(复制下来另存为一个timer.vbs的文件,双击会自动调用wscipt.exe运行), 每隔30分钟提醒一次, 点"确定"会继续提醒,"取消"会关闭定时器.

while trueret=msgbox("working for 30 minutes, have some water, now", 1)if ret <> 1 then wscript.quit end ifWScript.Sleep 30*60*1000wend

生成java网页工作环境

::@ECHO OFF@cd  /d  %~dp0@set WEBDEVROOT=%CD%@for /d %%T IN (JDK*) DO @SET JAVA_HOME=%CD%\%%T@set CATALINA_HOME=%WEBDEVROOT%\apache-tomcat-7.0.27@set M2_HOME=%WEBDEVROOT%\apache-maven-3.0.4@set MAVEN_OPTS=-Xms64m -Xmx256m@set path=%APPENGINE_HOME%;%JAVA_HOME%\bin;%CATALINA_HOME%\bin;%M2_HOME%\bin;%PATH%@ECHO #####################################################@ECHO #WELCOME TO USE JAVA WEB DEV ENVIRONMENT#@ECHO #####################################################@ECHO WEBDEVROOT     --^> %WEBDEVROOT%@ECHO JAVA_HOME      --^> %JAVA_HOME%@ECHO CATALINA_HOME  --^> %WEBDEVROOT%\apache-tomcat-7.0.27@ECHO M2_HOME        --^> %WEBDEVROOT%\apache-maven-3.0.4@ECHO #####################################################@%comspec%@ECHO ON



原创粉丝点击