batbat批处理命令大全怎么实现打印空白页?

一、rem和::@echo on
rem 这是注释内容,由于指定了echo on,命令行会打印这段注释
:: 这也是注释内容,但是不支持回显
@echo off
二、call和start1)区别1)call:调用另一个批处理文件,如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令;2)start:批处理中调用外部程序的命令(该外部程序在新窗口中运行,批处理程序继续往下执行,不理会外部程序的运行状况),如果直接运行外部程序则必须等外部程序完成后才继续执行剩下的指令2)cal使用示例1)调用脚本:: 调用另一个脚本,并在执行结束后返回本脚本
:: filename 参数必须具有 .bat 或 .cmd 扩展名
call autoexec.bat 参数1 参数2
2)调用命令行字符串:: 如果不用call,而直接运行%cmdstr%,将显示结果%aa%,而不是123456
set aa=123456
set cmdstr=echo %aa%
call %cmdstr%
pause
3)调用带返回值的子程序这里重点关注getSum中shift的用法,默认右移1位,即shift等价于shift /1。以本demo为例:%1在没有右移时表示第一个入参,在shift /1之后,%1指向的是原%2的入参。@echo off
rem 调用getString子程序
call :getString return
echo return = %return%
pause
@echo off
set sum=0
call :getSum 1 2 3 4 5
echo sum = %sum%
pause
goto :eof
rem 利用入参实现返回值
:getString
set %1=from sub script
goto :eof
rem 利用全局变量实现返回值
:getSum
set /a sum+=%1
shift /1
if not "%1"=="" goto getSum
goto :eof
3)start使用场景:: 调用文件管理器打开D盘
start explorer d:\
:: 打开命令行窗口
start cmd
三、pause暂停并运行显示:请按任意键继续. . .要显示其他提示语,可以这样用:Echo 其他提示语 & pause > nul四、for循环1)基本格式FOR %%variable IN (set) DO command [command-parameters]
2)参数解释1)%%variable 指定一个单一字母表示可替换的参数。
2)(set) 指定一个或一组文件名,可以使用通配符。
3)command 指定对每个文件执行的命令。
4)command-parameters为特定命令指定参数或命令行开关。
3)FOR循环的4个参数 /d /l /r /f/d 搜索目录使用格式:FOR /D %%variable IN (set) DO command [command-parameters]
作用:指定遍历范围为当前目录,且遍历对象仅为文件夹不包含文件类型适用性:如果 set 中包含通配符(* 和 ?),将对与 set 相匹配的每个目录(而不是指定目录中的文件组)执行指定的 Command。这个参数主要用于目录搜索,不会搜索文件。# 打印c盘根目录所有文件夹名称
@echo off
for /d %%i in (c:\*) do echo %%i
pause
# 打印c盘根目录名字只有1-3个字母的文件夹
for /d %%i in (c:\???) echo %%i
pause
/l 确定循环次数和步长使用格式:FOR /L %%variable IN (start,step,end) DO command [command-parameters]
作用:明确循环次数和步长
含义:表示以增量形式从开始到结束的一个数字序列。比如:(1,1,5) 将产生序列 1 2 3 4 5,(5,-1,1) 将产生序列 (5 4 3 2 1)。/r 遍历对象含文件和文件夹使用格式:FOR /R [[drive:]path] %%variable IN (set) DO command [command-parameters]
作用:指定递归遍历范围为/r后面的路径,遍历对象含文件和文件夹
作用:检查以 [drive:]path 为根的目录树,指向每个目录中的FOR 语句。如果在 /R 后没有指定目录,则使用当前目录。如果集仅为一个单点(.)字符或则具体的文件名(不含通配符),则忽略set枚举该目录树。@echo off
:: 递归遍历指定路径
for /r e: %%i in (*.exe) do echo %%i
:: 递归遍历当前路径
for /r %%i in (*.exe) do echo %%i
pause
/f 遍历读取文件、字符串、命令行中指定内容执行相应操作使用格式:
FOR /F [“options”] %%variable IN (file-set) DO command [command-parameters]
FOR /F [“options”] %%variable IN (“string”) DO command [command-parameters]
FOR /F [“options”] %%variable IN (‘command’) DO command [command-parameters]
选项参数解释:其中, [“options”]为一个或多个解析选项,选项之间用空格断开,这些解析选项包括:1)eol=c - 指一个行注释字符的结尾(就一个)(备注:默认以使用;号为行首字符的为注释行)2)skip=n - 指在文件开始时忽略的行数,(备注:最小为1,n可以大于文件的总行数,默认为1。)3)delims=xxx - 指分隔符集。这个替换了空格和跳格键的默认分隔符集。4)tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代的 for 本身。m-n格式为一个范围
@echo off
rem 首先建立临时文件test.txt
echo ;注释行,这是临时文件,用完删除 >test.txt
echo 11段 12段 13段 14段 15段 16段 >>test.txt
echo 21段,22段,23段,24段,25段,26段 >>test.txt
echo 31段-32段-33段-34段-35段-36段 >>test.txt
FOR /F "eol=; tokens=1,3* delims=,- " %%i in (test.txt) do echo %%i %%j %%k
Pause
Del test.txt
运行显示结果:11段 13段 14段 15段 16段21段 23段 24段,25段,26段31段 33段 34段-35段-36段请按任意键继续. . .
五、tasklist&taskkill进程管理tasklist|findstr pname
# 指定进程名称
pname就类似test.exe这样的名字
taskkill /f /im pname
# 指定进程ID(可指定多个)
taskkill /f /pid 2152 /pid 1284
}

分类专栏
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
成就一亿技术人!
hope_wisdom 发出的红包
实付元使用余额支付
点击重新获取
钱包余额
0
抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。余额充值
}

我要回帖

更多关于 bat批处理命令大全 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信