bat实例

批处理经典教程

例子

纯DOS脚本的贪吃车

bat常用实例整理

 

1、几个MAVEN批处理命令:

结构:

pom.xml

         |- bin

                  |- clean.bat

                  |- deploy.bat

                  |- install.bat

 

@echo off
echo [INFO] Clean parent pom.xml to local repository.


cd %~dp0

cd ..
call mvn clean 
pause

 

@echo off
echo [INFO] Install parent pom.xml to local repository.


cd %~dp0

cd ..
call mvn deploy -Dmaven.test.skip=true
pause

 

2、快速刷数据库脚本

结构:

mysql

         |- initdata

                  |- SYS_USER.SQL

                  |- ...

         |- view

                  |- SYS_USER_V.SQL

                  |- ...

         |- table

                  |- SYS_USER.SQL

                  |- ...

         |- install.bat

         |- INSTALL.SQL

 

@echo off 

:: input db var
set /p host=Enter MySQl host : 
set /p port=Enter MySQl port : 
set /p user=Enter MySQl user : 
set /p password=Enter MySQl password : 
set /p database=Enter MySQl database : 

:: generate tmp sql file
for /f %%r in ('findstr ./ INSTALL.SQL') do ( 
	echo source %cd%/%%r >> TMP.SQL
)

:: execute mysql import
mysql --host=%host% --port=%port% --user=%user% --password=%password% --database=%database% --default-character-set=utf8 < %cd%/TMP.SQL

:: clean tmp file
del TMP.SQL

pause 

 

INSTALL.SQL:

-- install initdata
./initdata/SYS_CONFIG_TEST.SQL
./initdata/SYS_USER.SQL
./initdata/SYS_USER_ROLE.SQL
./initdata/ESB_APPLICATION.SQL
./initdata/ESB_USER_APP.SQL

 效果: 

bat实例
 

扩展:

mysql导入:

文件名为New_Data.sql,当然我们也可以取名为New_Data.txt及任何其他的合法名字,并不一定要以后缀sql结尾: 
USE Meet_A_Geek; 
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Block"); 
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Newton"); 
INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Simmons"); 

注意上面的这些句子的语法都必须是正确的,并且每个句子以分号结束。 上面的USE命令选择数据库,INSERT命令插入数据。 

下面我们要把上面的文件导入到数据库中,导入之前要确认数据库已经在运行,即是mysqld进程(或者说服务,Windows NT下面称为”服务“,unix下面为”进程“)已经在运行。 

然后运行下面的命令: 
bin/mysql –p < /home/mark/New_Data.sql 

接着按提示输入密码,如果上面的文件中的语句没有错误,那么这些数据就被导入到了数据库中。 

 

3、清理图标缓存

clean-Thumbs.bat:

:: execute ant
ant -f clean-Thumbs.xml

pause

 clean-Thumbs.xml:

<project name="clean-Thumbs" default="clean-Thumbs" basedir=".">
	<target name="clean-Thumbs">
		<delete includeEmptyDirs="true">
			<fileset dir="${basedir}">
				<include name="**/Thumbs.db" />
			</fileset>
		</delete>
	</target>
</project>

 

 

4、把当前目录下所有文件改名成1~n.txt   

@echo off
setlocal enabledelayedexpansion
for %%i in (*.*) do (
set /a a+=1
::不包括文件夹
if /i not "%%~xi"==".bat"
	ren "%%i" "!a!.txt"
)
pause

 

5、建立随机命名的文件夹 

@echo off
set "s=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
set /a t=%random%%%62
call md %%s:~%t%,1%%

 

6、清理SVN标记

@echo off
REM AUTHOR:http://www.g58.net
if "%1"=="" (
 goto error
) else (
 goto action %1
)

:error
echo.
echo 必须输入要操作的文件夹路径参数,或拖动文件夹到此命令文件上。
echo.
pause
goto end

:action %1
echo --------------------------------------------------------------------------
echo 本次操作将删除 [%1] 文件夹下所有的svn标记,请慎重操作!
echo     Y 清理文件夹
echo     N 退出
echo ---------------------------------------------------------------------------
choice /c YN /m 请选择菜单(按ctrl+c或N退出):

if %errorlevel% equ 2 goto end
echo 正在清理文件夹:%1
echo 请稍候...
for /r %1 %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn"
echo 清理完毕!
echo 按任意键退出...
pause>echo.

:end
exit

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(bat)