Dos命令快速入门

Dos命令快速入门

@echo off 关闭盘符

echo “hello” 输出语句

pause 暂停

算术运算

命令模式 set /a 1+2,只能执一次

1
2
3
4
5
#文本模式,可以执行多次
@echo off
set /a var =1+2
echo %var%
pause

重定向

将输出结果移交到下一条命令中,或者将结果输出

1
2
3
>会覆盖
>>追加
echo "hello" >>a.txt

type a.txt输出文件内容

多命令运算符

  • && 具有短路,第一个命令错误不会执行第二个命令

  • || 第一个命令成功就不会执行第二个。第一个命令错误 ,第二个会执行 但是

1
ipconfig && net user 查看用户

管道运算

A|B A命令的输出当做B命令的输入

dir | find “.txt” 筛选出有.txt的文件

dir得到的结果默认放在###的位置 find ".txt" ###

批处理的基本命令

命令格式:命令 子命令 参数 操作 选项

命令帮助信息查看: 命令 /? 详细信息:命令 /help

批处理文件参数传递

.bat文件接收参数使用%num

例如:net user %1 %2 /add

1
2
3
4
5
6
7
@echo off
echo %1
echo %2
pause

#使用
a.bat hello 123

注释

rem 这是一个注释

修改命令提示符颜色

颜色命令:color

标题命令: title

时间相关命令

日期命令:date

时间命令:time

启动命令

start

调用其他bat文件

call 2.bat 需要加上路径,这样也能实现参数的传递

任务列表查看命令

tasklist

任务关闭命令

taskkill

文件夹结构命令

tree

tree /f同时显示文件和文件夹

关机命令

shutdown

计划任务命令

at

at 22:00 /every:M,T,W,TH,F,S,Su C:\abc.exe

批处理环境变量

set

文件夹或文件相关命令

dir目录浏览

目录新建与删除

mkdir 创建目录

rmdir 删除目录

目录切换

cd

重命名

ren old new

拷贝

copy source dest

文件删除

del a.txt 可以使用通配符

文件创建

echo>a.txt

nul >a.txt

文件目录剪切、重命名

move

用户操作命令

net user仅仅有默认权限,如果提升权限需要配合用户组操作命令

用户组操作命令

net localgroup

网络检测

ping

网络连接命令

telnet

路由信息查看

tracert

网络适配器

ipconfig

条件判断

1
2
3
4
5
6
7
@echo off
rem 演示if-else结构,判断字符串为规定字符串
set v=hello rem=左右最好不要有空格

if %v%==hello (echo ok) else (echo no) rem需要写在一行

pause>nul rem将pause的内容重定向到空,就不会出现 “请按任意键结束标语”

文件存在判断

exist

1
2
3
@echo off
if exist c:\1.bat (echo ok) else (echo no) rem需要写在一行
pause > nul
1
2
3
4
5
6
7
8
@echo off
if exist c:\1.txt (
echo file is find!
del c:\1.txt
) else ( rem 关键字必须与左右括号之间都有空格
echo file is not find!
)
pause > nul

循环结构

for /d in () do 具体操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
rem 遍历目录
for /d %%a in (路径/*) do echo %%a rem /d是遍历文件夹 %%a保存的变量
在文件中要将%i使用%%i来代替,%%1不会出现变量扩展的问题,在循环中同步更新%%i的值
for /d %%a in (*) do if %%a==test mkdir %%a


rem 遍历目录下及子目录的文件
for /r 目录路径 %%v in (匹配规则 *.txt) do echo %%v

rem 遍历数字
for /L %%v in (start,setp,end) do echo %%v

rem 遍历文件内容
for /f %%v in (文件名) do echo %%v rem对每一行进行遍历

代码实例

1
2
3
4
5
6
7
8
9
10
11
rem 重复创建目录
@echo off
cd C:/

:loop
md newDir
cd newDir
goto loop

pause>nul
exit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
rem交互操作
@echo off

echo 1.a
echo 2.b
echo 3.c
echo 4.d

:first
echo Enter your option:
set /p opt=
if %opt%==1 goto one
if %opt%==2 goto two
if %opt%==3 goto three
if %opt%==4 goto four
echo Invalid option
goto first

:one
echo choice one
pause > nul
exit rem一定要退出,不然会执行下面的语句

:two
echo choice two
pause > nul
exit

:three
echo choice three
pause > nul
exit

:four
echo choice four
pause > nul
exit
作者

步步为营

发布于

2024-03-23

更新于

2025-03-15

许可协议