1、文件夹下的文件名大小写转换
将文件夹下文件名大写改成小写.BAT
set /p PT= 请输入要更改文件名称的文件夹路径 :
cd %PT%
for /f "delims=" %%a in ('dir /b /a-d %PT%') do (
??????? set str=%%a
??????? for %%i in (a b c d e f g h i j K l m n o p q r s t u v w x y z) do call set str=%%str:%%i=%%i%%
??????? call ren *.* %%str%%
)
将文件夹下文件名小写改成大写.BAT
set /p PT= 请输入要更改文件名称的文件夹路径 :
cd %PT%
for /f "delims=" %%a in ('dir /b /a-d %PT%') do (
??????? set str=%%a
??????? for %%i in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do call set str=%%str:%%i=%%i%%
??????? call ren *.* %%str%%
)
说明:执行的时候,最好将此批处理放在要更文件名的文件夹下;此用处示例:用pl/sql导出的存储过程脚本为小写字母的.prc文件,可以在DOS下用rename *.prc *.SQL更改扩展名,然后用改成大写的批处理执行,最后上传到VSS上去,满足项目的要求(吉林银行数据仓库项目)。
2、金额输入阿拉伯变成大写汉字
金额输入小写变大写.bat
::code by
::date 2006-1-1(Happy new year!best wishes to everyone!)
@echo off
setlocal enabledelayedexpansion
set /a a=0,b=0,c=0
::================================
::设置单位名称;
SET NAME0=仟
SET NAME1=佰
SET NAME2=拾
SET NAME3=
::================================
::=============================================
::设置数字对应的大写中文汉字
for %%i in (零 壹 贰 叁 肆 伍 陆 柒 捌 玖) do (
???? set BIG!a!=%%i
???? set /a a+=1)
::=============================================
::=======================================================================
::在以下“函数”的处理过程中,要用到"#"对数字进行对齐(都成四位),以便截取;
::这里设置凡是出现"#"的地方都设置为空。
set BIG#=
::=======================================================================
set EN=
::====================================================
::这里对输入的数字进行处理,分别取出整数部分和小数部分;
set /p EN=请输入金钱数(1000亿以内):
for /f "tokens=1,2* delims=." %%i in ("%EN%") do (
????? set "round=%%i"
????? set "dec=%%j00" 2>nul)
::=====================================================
set /a round=%round:,=%
set dec=%dec:~0,2%
:test
?? set /a b+=1
?? ::=============================================
?? ::每四位数字为一组,对原来的数据进行截取;
?? if %round% gtr 9999 (
????? set num!b!=!round:~-4!
????? set round=!round:~0,-4!
????? goto :test) else set num!b!=!round!
?? ::==============================================
::=====================================================
::分别对1、2、3段数据进行处理;分别赋予单位:元、万、亿
::同时,分别将返回的数据传给str1,str2,str3(利用%3来控制)。
call :test1 %num1% 元 1
call :test1 %num2% 万 2
call :test1 %num3% 亿 3
::======================================================
::====================================================================
::去掉数字大写里多余的"零"。比如,1002,处理后读出来为:"壹千零贰元整"
::符合我们中国人一般的读数方法;同时将结果分别传入str1,str2,str3(%2控制)。
call :test2 %str1% 1
call :test2 %str2% 2
call :test2 %str3% 3
::=====================================================================
::==============================================================
::防止类似2,0000,1002.00形式出现错误(错误读为:2亿万1千零2元整)
if "!str2!"=="零万" set str2=零
::===============================================================
set str=%str3%%str2%%str1%
set str=%str:零元=元%
set str=%str:零万=万%
set str=%str:零亿=亿%
::防止整数部分为0;
if "%str%"=="元" set str=零元
::对小数部分数字进行处理;
if "%dec%"=="00" (set dec=整) else (
??? set /a dec1=!dec:~0,1!
??? set /a dec2=!dec:~1,1!
??? if !dec1! EQU 0 (set dec1=零) else call set dec1=%%BIG!dec1!%%角
??? if !dec2! EQU 0 (set dec2=) else call set dec2=%%BIG!dec2!%%分
??? set dec=!dec1!!dec2!
)
echo.
echo ========================
echo 你输入的金钱数目大写为:
echo.
echo %str:零零=零%%dec%
echo ========================
pause>nul
:test1
??? if not "%1"=="" (
??????? set temp=####%1
??????? set temp=!temp:~-4!
??????? for /l %%i in (0 1 3) do (
?????????????? set tmp%%i=!temp:~%%i,1!
?????????????? if defined tmp%%i (
????????????????? if !tmp%%i! GTR 0 (call set str%3=!str%3!%%BIG!tmp%%i!%%!NAME%%i!) else (
???????????????????????? call set str%3=!str%3!%%BIG!tmp%%i!%%)))
?????? set str%3=!str%3!%2
?????? ) else set str%3=
???? goto :eof
:test2
???? set tmp=%1
???? set tmp=%tmp:零零=零%
???? set str%2=%tmp:零零=零%
说明:此批处理用于将阿拉伯数字的钱数转成大写汉字的,觉得挺高级,暂收藏。
3、HS某同仁写的删除内控临时文件的批处理 ?
echo 删除内控临时文件
pause
del D:\hundsun\HsICSColl\宣城营业部\*.db
del D:\hundsun\HsICSColl\池州营业部\*.db
del D:\hundsun\HsICSColl\黄山营业部\*.db
del D:\hundsun\HsICSColl\合肥蒙城路营业部\*.db
del D:\hundsun\HsICSColl\华安合肥长江中路营业部\*.db
del D:\hundsun\HsICSColl\合肥金寨路营业部\*.db
del D:\hundsun\HsICSColl\华安合肥安庆路营业部\*.db
del D:\hundsun\HsICSColl\马鞍山营业部\*.db
del D:\hundsun\HsICSColl\安庆龙山路营业部\*.db
del D:\hundsun\HsICSColl\安庆人民路营业部\*.db
del D:\hundsun\HsICSColl\铜陵淮河北路营业部\*.db
del D:\hundsun\HsICSColl\铜陵淮河路营业部\*.db
del D:\hundsun\HsICSColl\巢湖营业部\*.db
注:虽然很简单,但感觉很有用。
4、清理系统垃圾
清空垃圾.bat ?
@echo off
echo 正在清除系统垃圾文件,请稍等......
del /f /s /q %systemdrive%\*.tmp
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.log
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %systemdrive%\recycled\*.*
del /f /s /q %windir%\*.bak
del /f /s /q %windir%\prefetch\*.*
rd /s /q %windir%\temp & md %windir%\temp
del /f /q %userprofile%\cookies\*.*
del /f /q %userprofile%\recent\*.*
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"
del /f /s /q "%userprofile%\recent\*.*"
echo 清除系统LJ完成!
echo. & pause?????????????????????????
5、还有设置IP地址,《设置网络IP及DNS的批处理》文中有专门例子,简单易用;
6、做项目的时候非常有用的两批处理
(1)、用copy *.sql all.sql可以将多个文件合成一个文件; (2)、批处理文件dir_path.bat dir /s/b/a-d *.SQL >list.txt 可以将目录下所有.sql结尾的文件的全路径写在list.txt文件中,用在如sqlplus调VSS下的程序文件。
|