DOS基本命令与批处理
uthor:朋小锋
一、DOS命令
1.1)如何操作DOS命令
😐 建议初学者在虚拟上实验,否则后果自负
开始—运行—输出cmd—回车
或者Win + R—运行—输入cmd–回车
即可打开C:\windows\system32\cmd.exe
1.2)基本命令
- 命令:color f0
帮助:color ?
作用:改变背景及字体颜色- 命令:cls
作用:清屏
1.3)目录相关命令
- 命令:dir
作用:浏览当前文件夹的内容
注:(带dir标识的为文件夹,否则为文件)
其他用法:
dir 指定路径
dir d:\
dir d:\ pic
dir / a #浏览所有内容,包括隐藏内容- 命令:盘符:
作用:切换分区, 如:c: d: e:- 命令:cd…
作用:退出一级目录- 命令:cd 文件夹名
作用:进入文件夹- Tab键:补全路径功能
- 命令:cd \
作用:直接退到根目录- 命令:md 文件夹 [文件夹 文件夹 …]
- 命令:rd 文件夹 [文件夹 文件夹 …]
作用:删除空文件夹
命令:rd 文件夹 /s /q
作用:无提示删除非空文件夹- 路径:
相对路径:针对当前路径有效,如:…\ 456
绝对路径:从根开始写路径,如:\ 123\ 345
1.4)文件相关命令
创建文件方法:
echo 字符串 >> [路径\ ]文件名.扩展名
注释:>> 和> 都可以将命令的输出内容输入到某文件中,若文件不存在,则同时创建该文件
>> 为追加
> 为覆盖
案例:修改hosts文件
echo 1.1.1.1 www.baidu.com >>c:\ windows\ system32\ drivers\ etc\ hosts命令:type 文件名.扩展名
作用:浏览一个文件的内容命令:del 文件名.扩展名
作用:删除文件
del * .txt #删除所有txt结尾的文件
del * .* #删除所有文件
del * .* /s /q #无提示删除所有文件
注释:* 为通配符,代表任意字符,任意长度
1.5)隐藏命令
- 修改文件或文件夹隐藏属性
命令:
attrib +h 文件全名/文件夹名 #隐藏文件或文件夹
attrib + s + h 文件全名/文件夹名 #提升为被系统保护的文件
注释:+ 改为- 为取消修改文件属性
1.6)复制和移动
- 命令:
复制文件:copy [路径\ ]源文件全名 目标路径[\ 新文件全名]
移动文件:move [路径\ ]源文件全名 目标路径[\ 新文件全名]
1.7)定时关机或重启
- 命令:定时关机或重启 shutdown - s - t 秒 #定时关机
shutdown - s - f - t 秒 #定时强制关机
shutdown - r - t 秒 #定时重启,同上加-f,为强制重启
shutdown - a #取消定时
shutdown - l #注销,同logoff命令相同
二、批处理编写
1.1)批处理作用
自上而下成批的处理每一条命令,直到执行最后一条!
1.2)如何创建批处理
扩展名: .bat
创建方法:新建一个记事本文件,然后将扩展名改为.bat
注:修改扩展名时,需要将文件的扩展名显示出来后再进行修改!
案例:新建一个记事本文件,然后将扩展名改为.bat,内容如下:
d:
cd \
cd tmp
del . / s/ q
1.3)批处理基本语法
1.3.1)@echo off
作用:关闭回显功能,也就是屏蔽过程,建议放置在批处理的首行。
1.3.2)pause
作用:暂停批处理运行
😐 案例:
@echo off
pause
执行结果如下:
1.3.3)title
作用:为批处理脚本设置标题
案例:
@echo off title
朋小锋小程序
1.3.4)echo.
作用:在执行批处理脚本时,可以空一行
案例:
@echo off
title 朋小锋小程序
echo ==========================
echo..
echo 欢迎使定时关机小程序
echo.
echo ==========================
1.3.5)set
作用:设置变量,常用与在脚本中的互动赋值
互动赋值:set /p time=请输入时间:
引用变量:%time%
案例:
@echo off
title 朋小锋小程序
echo =====================
echo.
echo 欢迎使用此小程序
echo.
echo =====================
set /p time=请输入时间:
shutdown -s -f -t %time%
echo 定时关机已设置完毕,谢谢使用!
pause
1.3.6):和goto
:定义标签名
goto实现跳转
为什么要把这两个命令联合起来介绍?因为它们是分不开的,无论少了哪个或多了哪个都会出错。当程序运行到 goto时,将自动跳转到:定义的标签部分去执行命令块了,所有:和goto联合起来可以实现在批处理执行时进行跳 转功能
案例:
@echo off
title 朋小锋小程序
:menu
cls
echo ====================
echo 菜单
echo 1.定时关机
echo 2.查看本机IP
echo 3.退出
echo ====================
set /p num=请输入选项:
if “%num%”== “1” goto a
if “%num%”== “2” goto b
if “%num%”== “3” goto c
echo 请正确输入数值(1、2、3),按任意键继续!
pause
goto menu
:a
set /p
time=请输入时间:
shutdown -s -f -t %time%
echo 定时关机已设置完毕,按任意键返还菜单!
pause
goto menu
:b
ipconfig
echo 按任意键返还菜单!
pause
goto menu
:c
exit