Windows DOS命令\批处理脚本

批处理程序

简单来说,批处理程序就是 Windows 自带的脚本,可以在 cmd | powershell 中直接运行,若写成文件,后缀为 .bat

.cmd和.bat区别

 .cmd 和 .bat 文件都是 Windows 操作系统中的批处理文件,用于执行一系列预定义的命令和操作。其中 .cmd 文件是 Windows NT 系列操作系统(如 Windows 7、Windows 10)中使用的批处理格式,而 .bat 文件则是早期版本的 Windows 操作系统(如 Windows 95、Windows XP)中使用的批处理格式。虽然 .cmd 和 .bat 文件的格式有所不同,但它们都可以包含一系列命令和操作,例如创建文件夹、复制文件、运行程序等等。这些命令可以使用 Windows 命令提示符或者直接双击运行批处理文件来执行。

知识点 

  1. cmd 与 powershel 不区分大小写
  2. DOS 是磁盘操作系统;命令提示符是 DOS 系统的界面中输入 DOS 命令的提示位置;cmd 是系统运行其自带 DOS 的命令;cmd.exe 是一个 16 位的 DOS 应用程序
  3. PID 是 processid(进程号);IM 是 imaginename(映像名称)
  4. 在 .bat 文件开头加上 @echo off 这行命令关闭了批处理命令的回显,即执行脚本时不会显示执行的命令本身,只显示命令执行的结果。
  5. echo.: 输出一个空行。

  6. 设置变量 set a=10,输出变量 echo %a%,设置变量表达式 set /a b=%a%+1

常用快捷键

清屏                                   cls

显示当前目录                    dir (cmd | powershell) ls (powershell)

打开当前文件夹                start.

查找文件                           dir *.txt (cmd | powershell)

显示当前路径                    pwd (powershell)

语法指令

1. 覆盖与追加内容

覆盖
echo "hello world" > t.txt
追加
echo "hello world" >> t.txt
查看内容
type

2.多命令运算 || &&

短路-从第一个执行,直到执行正确停止
ipconfig || net user

断路-从第一个执行,直到执行错误停止
ipconfig && net user

3.参数传递

bat 文件内容:
echo %1 %2
poweshell 运行指令:
.\test.bat Hello World!
输出 Hello World!

4.时间

cmd 运行指令:
年月日
date
输出 当前日期: 2021-09-27
date /T
输出 2021-09-27

时分秒
time
输出 当前时间: 23:14:16.68
time /T
输出 23:14

poweshell 运行指令:
date
输出 2021年9月27日 23:14:49

5.call

test.bat 文件内容:
echo "Hello "
call test2.bat

test2.bat 文件内容:
echo "Wordl!"

poweshell 运行指令:
.\test.bat
输出 Hello World!

6.tasklist | taskill

获取当前状态运行进程的列表
tasklist

获取指定要连接的远程系统的 tasklist
tasklist /S 192.168.0.1 /U admin /S password

其他参数:/FI 用于筛选 /FO 输出指定格数
tasklist /FI "PID eq 3232" /FO csv > a.csv

taskkill 是关闭进程
taskkill /IM notepad.exe

 7.shutdown

打开 GUI 执行远程主机关机的操作
shutdown /i

关闭本地主机
shutdown /p

8.at

某个时间点执行某个作业
at 21:56 "notepad.exe"

删除某个作业
at 2 /delete

每天都在某个位置执行某个作业
at 22:00 /every:M,T,W,Th,F,S,Su C:\Users\14805\desktop\payload.exe

 9.set

cmd 运行指令:
显示当前环境变量
set

输出环境变量值
echo %OS%
输出 Windows_NT

10.操作文件夹

创建文件夹
mkdir test
md test

重命名文件夹
ren test test1

将 a 文件夹中的文件复制到 b 文件夹
copy a b

删除文件夹
rmdir test
rd test

删除文件
del *.txt

重命名文件
move test.txt test1.txt

移动文件
move C:\a\test.txt C:\b\test.txt

11.循环结构

1.
if () else ()

2.
if (
) else (
)

3. 循环文件夹

# for /d %%名称 in (路径/*) do 具体操作

.bat文件内容:打印当前文件夹下的所有文件夹
for /d %%a in (*) do echo %%a

4.循环文件

# for /r "目录文件" %%名称 in (匹配规则,例如 *.py) do 具体操作

.bat文件内容:打印当前文件夹下的所有.py文件
for /r "C:\Users\14805\Desktop\abc" %%a in (*.py) do echo %%a

5.循环数字

# for /L %%a in (start,step,end) do 具体操作

.bat文件内容:ping 168.0.0.1 至 168.0.0.20(传入参数 %1 等于 168.0.0) 
for /L %%a in (1,1,20) do ping %1.%%a

6.循环文件中的内容

# for /F %%a in (文件名) do 具体操作

.bat文件内容:打印test.bat中的内容
for /F %%a in (test.bat) do echo %%a

记录下学习批处理只是 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值