参考

bat 脚本使用_冰清-小魔鱼的博客-CSDN博客_bat脚本

windows中dos-批处理-命令特殊符号-通配符与转义符_RiskAI的博客-CSDN博客_dos命令通配符

windows查找文件位置及查找文件中目标字符串dos命令_RiskAI的博客-CSDN博客_windows查找文件命令

windows中dos命令汇总及获取管理员权限_RiskAI的博客-CSDN博客_windows管理员权限命令

windows网络&服务&进程管理dos命令_RiskAI的博客-CSDN博客_windows进程管理命令

bat脚本执行mysql命令导入sql文件到数据库_大健的日常的博客-CSDN博客_bat mysql

使用批处理创建windows计划任务_little丶Sunshine的博客-CSDN博客_批处理 计划任务

定时任务 schtasks

在cmd中输入schtasks将输出系统的所有命令

有时候会有问题,显示无法加载列资源,可以输入chcp 437暂时更换编码

上面回车后,再次输入,将显示正常。

官方文档

Schtasks: Management Services | Microsoft Docs

一、开始

@echo off
echo hello  world
Pause

off会屏蔽这个输出

二、数据类型

整形,字符型,列表

整形和字符型可以直接输出,而不需要加引号

参数/a为数值型,不加参数/a为字符型。加入/p表示等待用户在屏幕输入

由于如果不加/a都会认为是字符型

使用变量需要在变量的两边加上%,比如%a%

1、自变量的使用

2、预定义变量(系统本身自带的变量)

%ALLUSERSPROFILE% 本地 返回“所有用户”配置文件的位置。
%APPDATA% 本地 返回默认情况下应用程序存储数据的位置。
%CD% 本地 返回当前目录字符串。
%CMDCMDLINE% 本地 返回用来启动当前的 Cmd.exe 的准确命令行。
%CMDEXTVERSION% 系统 返回当前的“命令处理程序扩展”的版本号。
%COMPUTERNAME%系统 返回计算机的名称。
%COMSPEC%系统 返回命令行解释器可执行程序的准确路径。
%DATE%系统 返回当前日期。使用与 date /t 命令相同的格式。由 Cmd.exe 生成。有关
date 命令的详细信息,请参阅 Date。
%ERRORLEVEL%系统 返回上一条命令的错误代码。通常用非零值表示错误。
%HOMEDRIVE%系统 返回连接到用户主目录的本地工作站驱动器号。基于主目录值而设置。用
户主目录是在“本地用户和组”中指定的。
%HOMEPATH%系统 返回用户主目录的完整路径。基于主目录值而设置。用户主目录是在“本地用户和组”中指定的。
%HOMESHARE%系统 返回用户的共享主目录的网络路径。基于主目录值而设置。用户主目录是
在“本地用户和组”中指定的。
%LOGONSERVER%本地 返回验证当前登录会话的域控制器的名称。
%NUMBER_OF_PROCESSORS%系统 指定安装在计算机上的处理器的数目。
%OS%系统 返回操作系统名称。Windows 2000 显示其操作系统为 Windows_NT。
%PATH% 系统 指定可执行文件的搜索路径。
%PATHEXT% 系统 返回操作系统认为可执行的文件扩展名的列表。
%PROCESSOR_ARCHITECTURE%系统 返回处理器的芯片体系结构。值:x86 或 IA64 基于
Itanium
%PROCESSOR_IDENTFIER% 系统 返回处理器说明。
%PROCESSOR_LEVEL%系统 返回计算机上安装的处理器的型号。
%PROCESSOR_REVISION% 系统 返回处理器的版本号。
%PROMPT% 本地 返回当前解释程序的命令提示符设置。由 Cmd.exe 生成。
%RANDOM% 系统 返回 0 到 32767 之间的任意十进制数字。由 Cmd.exe 生成。
%SYSTEMDRIVE% 系统 返回包含 Windows server operating system 根目录(即系统根目录)
的驱动器。
%SYSTEMROOT%系统 返回 Windows server operating system 根目录的位置。
%TEMP% 和 %TMP% 系统和用户 返回对当前登录用户可用的应用程序所使用的默认临时目录。
有些应用程序需要 TEMP,而其他应用程序则需要 TMP。
%TIME% 系统 返回当前时间。使用与 time /t 命令相同的格式。由 Cmd.exe 生成。有关
time 命令的详细信息,请参阅 Time。
%USERDOMAIN% 本地 返回包含用户帐户的域的名称。
%USERNAME% 本地 返回当前登录的用户的名称。
%USERPROFILE% 本地 返回当前用户的配置文件的位置。
%WINDIR% 系统 返回操作系统目录的位置。

参数/a为数值型,不加参数/a为字符型。加入/p表示等待用户在屏幕输入

3、扩展变量(bat脚本外部向内部传递参数值)

调用扩充变量最多为10个,由于%0表示bat文件本身,因此外部参数其实是%1至%9。

%0 代表bat本身文件名

%1 代表第一个参数

%2 代表第二个参数

其他扩充变量

注意下面的1是传入的第一个变量,比如有个mm被定义为某一个文件的路径,那么可以使用%~tmm去获取文件的修改时间

%~1 - 删除引号(\"),扩充 %1
%~f1- 将 %1 扩充到一个完全合格的路径名
%~d1- 仅将 %1 扩充到一个驱动器号(获得驱动器号)
%~p1- 仅将 %1 扩充到一个路径(不带驱动器号的路径)
%~n1- 仅将 %1 扩充到一个文件名(仅含文件名,不含后缀)
%~x1- 仅将 %1 扩充到一个文件扩展名(文件后缀)
%~s1- 扩充的路径指含有短名(完全路径)
%~a1- 将 %1 扩充到文件属性(文件的安全属性)
%~t1- 将 %1 扩充到文件的日期/时间(文件的修改时间)
%~z1- 将 %1 扩充到文件的大小(文件的字节大小)
%~$PATH : 1 - 查找列在 PATH 环境变量的目录,并将 %1

三、数值计算

1、数值加减

2、位运算符

形式为    \"逻辑运算符\"

四、字符串处理

1、字符串串联

只需要将不同字符串排在一起就可以 set c=%a%%b%

2、字符串替换

set a=%a:hello=world% 意思是将a中的hello替换为world

3、字符串查找

使用?和. 两个通配符查找

查询所有含有.dll后缀的文件:

@echo off
dir /b/s *.dllPause

查询所有第二个字母含是i的文件名的文件

@echo offdir /b/s ?i*.*Pause

4、字符串截取

字符串截取需要知道截取的起始位置和截取的字符串数目长度

表示方法为:str:~m,n 其中:str表示要截取的字符串,m表示截取的起始位置,n表示截取的字符串长度,常有如下几种处理方式:

%a:~0,n%表示从字符串a取左边n位
%a:~-m%表示从字符串a取右边m位
%a:~m,n% 表示从字符串a从m+1位开始取n位
%a:~m,-n% 表示从字符串a,由m+1位开始,至倒数n+1位
%a:~m %表示从字符串a 由m+1位开始取右边全部。

五、控制语句

1、条件语句

(1)单一条件:if(条件) do commend

(2)多重条件:if (条件A) (do commend a ) ELSE (do commend b)

(3)条件嵌套:if(条件A) if (条件B) do commend  这个是A条件和B条件都满足

2、循环语句

bat脚本的for语句语法如下:

在cmd窗口中:for %I in (集合A) 条件a, do command

在bat文件中:for %%I in (集合A) 条件a do command

集合A表示I可以遍历的所有数据集,该数据集既可以是数组、文件夹、语句甚至于满足某种条件的集合,command表示满足条件时执行命令。该循环语句的含义为使用迭代变量I对集合A进行遍历,在遍历过程中,如果满足条件a,执行commend命令。

@echo offset list=1 2 3 4 5(for %%i in (%list%) do ( echo %%i ))pause

六、特殊符号

^ 转义符                    比如 echo 非常^&批处理   这里&将会当做一个字符输出

|  管道传递符            将前面一条命令的执行结果传递给后面一条命令继续执行.

|| 连接符                   当前面的命令没有成功执行 则执行后面的命令 可以作判断选择用.

例如 echo 0123456 | find "789" || echo 字符中没有789

&& 连接符               当前面的命令成功执行 再执行后面的命令

例如  echo 0123456 | find "123" && echo 字符中含有123
& 连接符                 无论前面的命令是否成功执行 都执行后面的

例如 echo 0123456 | find "789" & echo 字符中含有123

> 定向符                 将输出的内容重定向到指定(文本中) (覆盖)

比如echo 123456789>1.txt  输出字符串到1.txt中
                                如果是 >nul 则是输出到空设备中 起屏蔽屏幕输出的作用

            pause>nul 将命令的提示屏蔽掉

>> 定向符(追加)      将输出内容写入指定(文本中)(追加)

< 输入定向符          从指定的(文本)输入内容

比如set /p wind=<1.txt          这样就不需要用户输入了

@ 跟在后面的命令将不会输出到屏幕上    (这个就是@echo off的由来)

@pause
@echo b
@pause

%%

命令符号            含义                 英文解释
EQU                等于                 equal
NEQ                不等于               not equal
LSS                少于                 less than
LEQ                少于或等于            less than or equal
GTR                大于                 greater than
GEQ                大于或等于            greater than or equal

七、函数

函数声明:它告诉编译器一个函数的名字,返回类型和参数。

函数定义:它提供了函数的实际主体。

函数使用:使用CALL:函数名

@echo off
SETLOCALCALL :Display pause:Display
SET /a index=5
echo The value of index is %index% 

八、常用命令

bat命令分为内部命令和外部命令。

1、内部命令是指cmd.exe的内部命令,由于cmd.exe是windows操作系统的底层引导程序,所以内部命令长驻于内存中,内部命令有:

常用命令:

cls         清除屏幕

mkdir    创建一个目录  比如mkdir test

move    将一个或多个文件从一个目录移动到另一个目录。move ./* test  全移动到test文件夹

rename      重命名   比如 rename text1.txt test2.txt

rmdir         删除目录 比如rmdir test

2、外部命令

常用外部命令

calc             启动计算器

mspaint       画图

notepad      打开记事本

osk            打开屏幕键盘

内部命令汇总:

ASSOC            显示或修改文件扩展名关联。
ATTRIB           显示或更改文件属性。
BREAK            设置或清除扩展式 CTRL+C 检查。
BCDEDIT        设置启动数据库中的属性以控制启动加载。
CACLS            显示或修改文件的访问控制列表(ACL)。
CALL              从另一个批处理程序调用这一个。
CD                 显示当前目录的名称或将其更改。
CHCP             显示或设置活动代码页数。
CHDIR            显示当前目录的名称或将其更改。
CHKDSK         检查磁盘并显示状态报告。
CHKNTFS       显示或修改启动时间磁盘检查。
CLS                清除屏幕。
CMD              打开另一个 Windows 命令解释程序窗口。
COLOR          设置默认控制台前景和背景颜色。
COMP           比较两个或两套文件的内容。
COMPACT     显示或更改 NTFS 分区上文件的压缩。
CONVERT      将 FAT 卷转换成 NTFS。你不能转换当前驱动器。
COPY             将至少一个文件复制到另一个位置。
DATE             显示或设置日期。
DEL                删除至少一个文件。
DIR                 显示一个目录中的文件和子目录。
DISKPART       显示或配置磁盘分区属性。
DOSKEY         编辑命令行、撤回 Windows 命令并创建宏。
DRIVERQUERY    显示当前设备驱动程序状态和属性。
ECHO                  显示消息,或将命令回显打开或关闭。
ENDLOCAL          结束批文件中环境更改的本地化。
ERASE                  删除一个或多个文件。
EXIT                     退出 CMD.EXE 程序(命令解释程序)。
FC                        比较两个文件或两个文件集并显示
                      它们之间的不同。
FIND              在一个或多个文件中搜索一个文本字符串。
FINDSTR        在多个文件中搜索字符串。
FOR               为一组文件中的每个文件运行一个指定的命令。
FORMAT       格式化磁盘,以便用于 Windows。
FSUTIL           显示或配置文件系统属性。
FTYPE          显示或修改在文件扩展名关联中使用的文件类型。
GOTO           将 Windows 命令解释程序定向到批处理程序中某个带标签的行。
GPRESULT       显示计算机或用户的组策略信息。
GRAFTABL       使 Windows 在图形模式下显示扩展字符集。
HELP            提供 Windows 命令的帮助信息。
ICACLS         显示、修改、备份或还原文件和目录的 ACL。
IF                 在批处理程序中执行有条件的处理操作。
LABEL          创建、更改或删除磁盘的卷标。
MD              创建一个目录。
MKDIR         创建一个目录。
MKLINK        创建符号链接和硬链接
MODE           配置系统设备。
MORE           逐屏显示输出。
MOVE           将一个或多个文件从一个目录移动到另一个目录。
OPENFILES      显示远程用户为了文件共享而打开的文件。
PATH               为可执行文件显示或设置搜索路径。
PAUSE          暂停批处理文件的处理并显示消息。
POPD           还原通过 PUSHD 保存的当前目录的上一个值。
PRINT          打印一个文本文件。
PROMPT      更改 Windows 命令提示。
PUSHD         保存当前目录,然后对其进行更改。
RD                删除目录。
RECOVER      从损坏的或有缺陷的磁盘中恢复可读信息。
REM            记录批处理文件或 CONFIG.SYS 中的注释(批注)。
REN             重命名文件。
RENAME     重命名文件。
REPLACE      替换文件。
RMDIR          删除目录。
ROBOCOPY       复制文件和目录树的高级实用工具
SET            显示、设置或删除 Windows 环境变量。
SETLOCAL       开始本地化批处理文件中的环境更改。
SC             显示或配置服务(后台进程)。
SCHTASKS       安排在一台计算机上运行命令和程序。
SHIFT          调整批处理文件中可替换参数的位置。
SHUTDOWN       允许通过本地或远程方式正确关闭计算机。
SORT           对输入排序。
START          启动单独的窗口以运行指定的程序或命令。
SUBST          将路径与驱动器号关联。
SYSTEMINFO     显示计算机的特定属性和配置。
TASKLIST       显示包括服务在内的所有当前运行的任务。
TASKKILL       中止或停止正在运行的进程或应用程序。
TIME           显示或设置系统时间。
TITLE          设置 CMD.EXE 会话的窗口标题。
TREE           以图形方式显示驱动程序或路径的目录结构。
TYPE           显示文本文件的内容。
VER            显示 Windows 的版本。
VERIFY        告诉 Windows 是否进行验证,以确保文件正确写入磁盘。
VOL            显示磁盘卷标和序列号。
XCOPY          复制文件和目录树。
WMIC           在交互式命令 shell 中显示 WMI 信息。

2、外部命令汇总

1. calc-----------启动计算器

2. certmgr.msc----证书管理实用程序

3. charmap--------启动字符映射表

4. chkdsk.exe-----Chkdsk磁盘检查

5. ciadv.msc------索引服务程序

6. cleanmgr-------垃圾整理

7. cliconfg-------SQL SERVER 客户端网络实用程序

8. Clipbrd--------剪贴板查看器

9. cmd.exe--------CMD命令提示符

10. compmgmt.msc---计算机管理

11. conf-----------启动netmeeting

12. dcomcnfg-------打开系统组件服务

13. ddeshare-------打开DDE共享设置

14. devmgmt.msc--- 设备管理器

15. dfrg.msc-------磁盘碎片整理程序

16. diskmgmt.msc---磁盘管理实用程序

17. drwtsn32------ 系统医生

18. dvdplay--------DVD播放器

19. dxdiag---------检查DirectX信息

20. eudcedit-------造字程序

21. eventvwr-------事件查看器

22. explorer-------打开资源管理器

23. fsmgmt.msc-----共享文件夹管理器

24. gpedit.msc-----组策略

25. iexpress-------木马捆绑工具,系统自带

26. logoff---------注销命令

27. lusrmgr.msc----本机用户和组

28. magnify--------放大镜实用程序

29. mem.exe--------显示内存使用情况

30. mmc------------打开控制台

31. mobsync--------同步命令

32. mplayer2-------简易widnows media player

33. Msconfig.exe---系统配置实用程序

34. mspaint--------画图板

35. mstsc----------远程桌面连接

36. narrator-------屏幕“讲述人”

37. net start messenger----开始信使服务

38. net stop messenger-----停止信使服务

39. netstat -an----(TC)命令检查接口

40. notepad--------打开记事本

41. Nslookup-------IP地址侦测器

42. ntbackup-------系统备份和还原

43. ntmsmgr.msc----移动存储管理器

44. ntmsoprq.msc---移动存储管理员操作请求

45. odbcad32-------ODBC数据源管理器

46. oobe/msoobe /a----检查XP是否激活

47. osk------------打开屏幕键盘

48. packager-------对象包装程序

49. perfmon.msc----计算机性能监测程序

50. progman--------程序管理器

51. regedit.exe----注册表

52. regedt32-------注册表编辑器

53. regsvr32 /u *.dll----停止dll文件运行

54. regsvr32 /u zipfldr.dll------取消ZIP支持

55. rononce -p ----15秒关机

56. rsop.msc-------组策略结果集

57. secpol.msc-----本地安全策略

58. services.msc---本地服务设置

59. sfc /scannow---windows文件保护

60. sfc.exe--------系统文件检查器

61. shrpubw--------创建共享文件夹

62. sigverif-------文件签名验证程序

63. sndrec32-------录音机

64. Sndvol32-------音量控制程序

65. syncapp--------创建一个公文包

66. sysedit--------系统配置编辑器

67. syskey---------系统加密,一旦加密就不能解开,保护windows xp系统的双重密码 (慎用)

68. taskmgr--------任务管理器

69. tourstart------xp简介(安装完成后出现的漫游xp程序)

70. tsshutdn-------60秒倒计时关机命令

71. utilman--------辅助工具管理器

72. wiaacmgr-------扫描仪和照相机向导

73. winchat--------XP自带局域网聊天

74. winmsd---------系统信息

75. winver---------检查Windows版本

76. wmimgmt.msc----打开windows管理体系结构(WMI)

77. write----------写字板

78. wscript--------windows脚本宿主设置

79. wupdmgr--------windows更新程序

例子

1、查询所有时间计划脚本,由于我的win7编码有问题,所以需要先改一下chcp

@echo off
chcp 437
schtasks /query
pause

2、加入时间计划脚本

@echo off
schtasks /create /sc minute /mo 1 /tn "wechat1" /tr C:\Users\admin\Desktop\search.bat
pause

删除名为wechat1的计划任务  schtasks /delete /tn "wechat1" /f

3、获取文件的修改时间,::注释的地方是将信息写入到log文件中

@echo off
for %%i in ("C:\Users\admin\Desktop\flag.txt")do (echo  %%~nxiecho %%~zi字节echo %%~tiecho Y):: echo %%~nxi&echo %%~zi字节&echo %%~ti&echo Y)>"%%~ni.log"
pause

上面有关于时间的内容

%~t1- 将 %1 扩充到文件的日期/时间(文件的修改时间)

在bat脚本里面需要用两个%表示,%%~i代表i的变量,格式扩充一下,%%~ti即i变量的时间

4、修改一下, DOS(cmd.exe)严重缺乏日期处理功能和许多其他缺陷

将使用下列方法进行两个文件的对比

@echo offfor %%i in ("C:\Users\admin\Desktop\flag.txt") do set thisTime1=%%~ti
for %%i in ("C:\Users\admin\Desktop\flag1.txt") do set thisTime2=%%~ti if "%thisTime1%"=="%thisTime2%" (echo same)else (
echo different
)
if "%thisTime1%" GTR "%thisTime2%" (echo 第一个文件新)else (
echo 第二个文件新
)pause

window的bat批处理命令相关推荐

  1. .bat批处理命令的介绍

    HUC = = D组 http://www.cnhonkerarmy.com/ 63707869 =====================================开始============ ...

  2. BAT 批处理命令 - 解决cmd控制台中文乱码问题实例演示

    BAT 批处理命令支持的是 ANSI 编码,如果用默认的 UTF-8 编码会报错.我们只要把编码改成 ANSI 就行了. 下图是我写了一个有问题的代码.[如果还能发现其它问题可以评论区留言哦!考验一下 ...

  3. Bat批处理命令使用教程(完整篇)

    Bat批处理命令使用教程(完整篇) 原帖:http://www.anqn.com/arp/article/2007-09-14/a0986565.shtml 此处仅是学习只用: 这是一篇技术教程,我会 ...

  4. bat批处理命令基础知识

    本文用于记录基础的bat批处理文件编写方法,只进行简单的学习,不会过多深入. 文章名:bat批处理命令 作者:遮瑕 修改时间:2022年11月26日 本文主要内容来自批处理之家 文章目录 一.什么是b ...

  5. 通过bat批处理命令进行adb push和adb pull批量拉取文件

    通过bat批处理命令进行adb push和adb pull批量(通配符)拉取文件 代码环境:win10 powershell.adb设备 为了adb调试方便,花了一天时间简单入门了下bat批处理命令, ...

  6. Win7 bat批处理命令

    Win7 bat批处理命令 del 删除文件命令 del %cd%\*.log* %cd%\ : 当前文件夹下 *.log* : 删除含有".log"的所有文件 参数: /P 删除 ...

  7. window cmd bat批处理杀端口对应的进程

    window cmd bat批处理杀端口对应的进程,把代码复制到一个文本中,然后将后缀名改为bat,然后使用管理员权限运行,有时候不需要,直接输入对应的端口就可以杀掉该端口下的进程了 @echo of ...

  8. windows系统dos命令:cmd.exe运行的bat批处理命令详解

    DOS批处理 1.简单批处理命令 1.1echo:打开或关闭回显 echo off 关闭回显 ==>关闭之后不会显示一些不必要的信息. 后面所有的命令均不显示,但本条命令是显示的. @echo ...

  9. BAT批处理命令 教程

    第一章批处理基础 第一节常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令. 小知识:可以在 ...

  10. bat批处理命令大全_DOS使用环境变量图文教程,bat批处理脚本查看调用环境变量命令...

    大家好,我是老盖,首先感谢观看本文,本篇文章做的有视频,视频讲述的比较详细,也可以看我发布的视频. 今天我们学习在DOS和BAT批处理脚本中使用环境变量,环境变量是windows定义的一个变量,它有一 ...

最新文章

  1. WinForm下PictureBox和Panel控件的On_Paint事件有何区别
  2. mysql 远程_MYSQL开启远程访问权限的方法
  3. 文件及文件夹更改通知/监测软件TheFolderSpy
  4. html base64 本地图片,base64 html 图片
  5. vue 传递多行数据_vue 数据传递的方法
  6. Aliyun OSS Nginx proxy module(阿里云OSS Nginx 签名代理模块)
  7. Mongodb 与 Redis 调教
  8. 女神节爆猛料!. NET程序员男女比例公布!
  9. 查询字符串某个字符的个数
  10. vuex webpack 配置_vue+webpack切换环境和打包之后服务器配置
  11. Solr空间搜索原理分析与实践
  12. 解决暴风影音2012无法播放rmvb视频文件的问题
  13. 安川机器人原点丢失_安川机器人原点及校准浅析
  14. 红黑树时间复杂度证明(O(lgn))
  15. 吉林省等保测评机构项目测评收费价格标准参考
  16. 近期部分航院部分消息(主要是长长见识摘录的)
  17. js根据url下载文件并重命名,兼容ie11(其他版本未测试)
  18. 树型结构总结:二叉查找树、堆、平衡树、2-3查找树、红黑树、B树、B+树
  19. 引入spring-boot-starter-redis包报错 :unknown
  20. 怎么用visio绘制出一半实线,一半虚线的椭圆,并填充颜色

热门文章

  1. 抖音超火的网页表白代码大全(浪漫的html表白源代码)
  2. Day_02 【Java基础】JDK_1.8的下载安装和环境变量的配置、JDK帮助文档的下载【详细步骤】
  3. Lwip协议netif结构体详解
  4. 信号检测与估计(1)
  5. [软件更新]卡巴斯基全功能安全软件2010简体中文版程序发布
  6. 计算机二级c语言考试的步骤,计算机二级C语言考试技巧
  7. windows 常用自由、开源、免费软件(不断更新)
  8. Citrix 桌面云 XenApp_XenDesktop_7.18 部署
  9. XenApp6.5启用3D功能
  10. 光域网(IES)在Unity3d中的应用【2020】