rem 比较运算符:
EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于
例如
if not %in%==2 goto 2
如:
if %in% NEQ 1 goto 2
注意文本比较应使用==
&&:前面的命令执行成功才执行后面的命令
||:前面的命令执行失败才执行后面的命令
&:不管前面的命令执行是否成功都执行后面的命令
|:管道运算符,前面命令的输出作为后面命令的输入
演示删除7日前(含第7日前)修改的文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
:: DateDel.bat - 演示删除7日前(含第7日前)修改的文件 :: Will Sort - 2021-8-26 - CMD@WinXP :: Note: 不要将此批处理文件置于需要选择删除文件的目录中 :: 程序只是进行了删除演示,若演示无误,删除 del 前面的 echo 即可正常执行 :: 如果首次执行的日期不是2021-8-26,则需调整第四行代码中的保留日期列表 :: 程序需要每日运行至少一次,以便自动更新日期列表 @ echo off if "%1" == ":" goto %2 if exist %temp%.\_DateDel.bat %temp%.\_DateDel.bat %0 : Update 2021-08-20 2021-08-21 2021-08-22 2021-08-23 2021-08-24 2021-08-25 2021-08-26 :Update setlocal EnableExtensions set today=%date:~0,10% if not "%today%" == "%9" %0 : Update %4 %5 %6 %7 %8 %9 %today% echo %0 : Update %3 %4 %5 %6 %7 %8 %9 >%temp%.\_DateDel.bat :Delete for / r %%f in (*.*) do if "%%~tf" LEQ "%3" echo del "%%f" :End |
批处理 数值计算与大小比较
变量
设定变量
set month=7
使用变量
%day%
注释
::请以管理员身份运行
比较大小
EQU 等于
NEQ 不等于
LSS 小于
LEQ 小于或等于
GTR 大于
GEQ 大于或等于
if语句
如果日期大于31,日期设定为1,月份加1。
1
2
3
|
if %day% GTR 31 ( set /a day=1 set /a month=month+1) |
while循环
使用goto语句实现
:while
//循环内容
pause
goto :while
输出到屏幕
echo %date%表单数据已复制到剪切板
输出到文本
echo %f% >res.txt
读取文本到剪切板
clip < res.txt
删除文件
del res.txt
暂停
pause
关闭回显
@echo off