批处理使用(小试牛刀现学现卖,嘻)
注:/**/注释部分不属于bat的语法
1.调用pdf2swf.exe,单个转换swf,假设命名为aaa.bat
@echo off
c: /* 指定到c盘 */
cd\program files\swftools\ /* cd c:\program files\swftools\ */
pdf2swf c:\temp\17.pdf -o c:\temp\17.swf -T 9 -s languagedir=c:\xpdf-chinese-simplified /* 执行转换命令 */
cd\
2.调用pdf2swf.exe ,批量转换swf,假设命名为bbb.bat
@echo off
c: /* 指定到c盘 */
cd\program files\swftools\ /* cd c:\program files\swftools\ */
set upath=F:\UploadDoc\33\科学与技术2009年全年刊电子版\ /* 变量upath:待转换文件所在目录 */
for /f %%c in ('dir /b %upath%') do pdf2swf %upath%%%c -o %upath%%%~nc.swf -T 9 -s languagedir=c:\xpdf-chinese-simplified
/* upath使用方式:%upath%
for %%c in ('dir /b %upath%') do :for循环
/f :文件
%%c :子文件
%%~nc :不带扩展的子文件名称
'dir /b %upath%' :目录下文件集合(列出文件名和扩展名)
*/
cd\
pause /* 暂停键,按任意键继续 */
3.批处理文件本身的文件属性
@echo off
echo (d)rive: %~d0 /* 所在盘符 */
echo (p)ath: %~p0 /* 所在目录 */
echo (n)ame: %~n0 /* 文件名(不带扩展名) */
echo e(x)t: %~x0 /* 文件名 */
echo %~dpnx0 /* 文件全路径 */
pause
4.变量自增
@echo off
setlocal enabledelayedexpansion /* 用setlocal enabledelayedexpansion,启用变量延迟,然后把%n%改成!n! */
set upath=F:\UploadDoc\33\科学与技术2009年全年刊电子版\
c:
cd\program files\swftools\
for /f %%c in ('dir /b %upath%') do ( /* for循环内执行多条命令 */
set /a n=n+1
pdf2swf %upath%%%c -o %upath%!n!.swf -T 9 -s languagedir=c:\xpdf-chinese-simplified
)
cd\
pause
附:用中文做目录可以,但加上左右括号(中文括号或英文括号)就不行。所以文件路径最好不要带括号