.bat批处理基础
批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。批处理文件的扩展名为bat 。目前比较常见的批处理包含两类:DOS批处理和PS批处理。
我们这次要讲的是DOS批处理,首先我们先来看一个简单的批处理例子(脚本如下,可打开或折叠):
@echo off
cls
title TesterWei的dos程序
echo 欢迎使用我的dos程序
echo ------------------请选择----------------
echo ------------------1.打开记事本----------
echo ------------------2.打开计算器----------
echo ------------------3.打开放大镜----------
echo ------------------4.重启计算机----------
echo ------------------5.关闭计算机----------
echo ------------------6.设置dos窗口背景为白,字体为黑
echo ------------------7.取消关机或重启------
echo ------------------8.退出----------------
set /p a=请输入你的选择(1-9):
echo 你输入的数据是:%a% if %a%==1 (
goto ab
)
if %a%==2 (
goto ac
)
if %a%==3 (
goto ad
)
if %a%==4 (
goto ae
)
if %a%==5 (
goto af
)
if %a%==6 (
goto ag
)
if %a%==7 (
goto ah
)
if %a%==8 (
goto ai
)
:ab
notepad
goto end
:ac
calc
goto end
:ad
magnify
goto end
:ae
shutdown /r
goto end
:af
shutdown /s /t 100
goto end
:ag
color f0
goto end
:ah
shutdown /a
goto end
:ai
exit
:end
call "TesterWei.bat"
TesterWei.bat
批处理的常见命令(针对以上例子部分命令,更多可自行百度查阅资料)
1、REM 和 ::
一般用来给程序加上注解,该命令后的内容不被执行,但能回显,后者也是注释作用, 而且更简洁有效。
2、ECHO 和 @
回显,字符放在命令前将关闭该命令回显,无论此时echo是否为打开状态。
3、PAUSE
在这里就是停止系统命令的执行并显示下面的内容。
4、ERRORLEVEL
程序返回码。
5、GOTO 和 :
GOTO会点编程的朋友就会知道这是跳转的意思。
6、TITLE
设置CMD窗口标题。
7、CALL
CALL命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后,再继续执行原来的批处理。
8、IF
IF 条件判断语句。
9、SET /P
SET /P这里提示用户输入。
10、%A%
变量的应用,显示出变量A的值。
双击批处理文件:
Dos窗口界面如下(输入1-8调用如下功能):

OK.了解以上基本命令后,现在我们来整蛊一下身边的小伙伴或者女朋友(小白,否则。。。。。。)
仅仅只需要一条简单的批处理命令,如下
shutdown -f -s -t 10 -c "Hey, son, you have the virus, the system will automatically shut down after 10s!"
将该命令保存到.bat批处理文件中,并右击生成快捷方式
将快捷方式拉到桌面上如下右键更改图标
注意:一定要生成快捷方式,才可以更换图标!!!

图标已经更换,一旦双击打开图片就等于执行批处理,马上出事

高清图如下

可自己编辑报错信息,至于图片的来源我想剧本由你来写,因为你就是导演!
英文版(图片打开后的提示)

国语版(图片打开后的提示)

现在,你就可以若无其事的看着你的小伙伴或女朋友再也不镇静了,毕竟长这么大确实还没有遇到过这种情况!
说好了只能矫情一下,天亮了就要好好做人。。。。。。
.bat批处理基础的更多相关文章
- windows bat批处理基础命令学习教程(转载)
一.基础语法: 1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令.可以使用任何文本文件编辑工具创建和修改.2.批处理是一种简单的程序,可以用 if 和 goto 来控 ...
- Windows CMD .bat 批处理基础语法
格式 @echo off 代码..... pause 不会逐行将命令打印. rem [注释] 关键字注释. :: [注释] 符号注释. echo 打印到控制台. >> 输出重定向.追加. ...
- BAT批处理(二)
在前一篇中已对BAT批处理基础作了一些总结,但是对于BAT批处理还有很多的知识点没有讲解到,比如DOS中的特殊符号:IF.FOR的使用:变量:更多的DOS命令等等.本文在前一篇的基础上继续对BAT批处 ...
- 【转】BAT 批处理脚本 教程
第一章 批处理基础第一节 常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以在 ...
- BAT 批处理脚本 教程
第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以 ...
- 【转载】BAT 批处理脚本教程
来源:http://www.cnblogs.com/glaivelee/archive/2009/10/07/1578737.html BAT 批处理脚本 教程 第一章 批处理基础第一节 常用批处 ...
- [转]BAT 批处理脚本 教程
第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以 ...
- bat脚本基础教程
bat脚本就是DOS批处理脚本,就是将一系列DOS命令按照一定顺序排列而形成的集合,运行在windows命令行环境上.本文主要介绍bat脚本基础语法,希望完成本文内容学习之后具备基础的bat脚本开发能 ...
- bat 批处理切换到当前脚本所在文件夹
bat 批处理切换到当前脚本所在文件夹 切换到当前脚本所在的文件夹 ? 1 cd %~dp0 另外附上一些bat基本内容 —————————————————————————————— 批处理常用 ...
随机推荐
- opencv获取像素的值
opencv中获取图像像素的方法 方法一: IplImage *img = cvLoadImage("Lena.jpg", 0); CvScalar pixel; for (int ...
- POJ 2018 Best Cow Fences
斜率优化. 设$s[i]$表示前缀和,$avg(i,j)=(s[j]-s[i-1])/(j-(i-1))$.就是$(j,s[j])$与$(i-1,s[i-1])$两点之间的斜率. 如果,我们目前在计算 ...
- [linux]压缩、解压命令
.tar.gz 和 .tgz 解压:tar zxvf FileName.tar.gz 压缩:tar zcvf FileName.tar.gz DirName tar 解包:tar xvf FileNa ...
- 二分+Dfs【p1902】刺杀大使
题目描述--->p1902 刺杀大使 题意概括: 找一条路径,使得从第1行到第n行路径的最大值最小. 分析: 题目概括出来,很容易想到二分. 求最大值最小,因此我们可以对最大伤害值进行二分. 如 ...
- 位运算和enum中的位运算
1.位逻辑非运算 ~ 位逻辑非运算是单目的,只有一个运算对象.位逻辑非运算按位对运算对象的值进行非运算,即:如果某一位等于0,就将其转变为1:如果某一位等于1,就将其转变为0. 比如,对二进制的100 ...
- 【贪心】bzoj3850 ZCC Loves Codefires
类似某noip国王游戏. 考虑交换两个题目的顺序,仅会对这两个题目的贡献造成影响. 于是sort,比较时计算两个题目对答案的贡献,较小的放在前面. #include<cstdio> #in ...
- 7.1(java学习笔记)InetAddress&InetScoketAddress
一.InetAddress 这个类主要表示IP地址.InetAddress封装了IP地址和域名.域名可以看做IP地址的一个别称,起这个别称的目的是为了便于记忆. 例如www.baidu.com 就是1 ...
- Swift数独游戏优化——C++与OC混编、plist自动生成
一.为什么要C++与OC混编? 在我之前的数独游戏中涉及到的数独游戏生成算法是参考的网上其他人的算法,是利用C++来实现的. 但是在我的例子中我发现这样存在一定的局限性: 1.我是利用Termin ...
- Intellij IDEA光标保持自动缩进,设置下次不放在行首
- Error: Top-level design entity "demo" is undefined
原因:顶层模块的module名没有和工程名同名 解决方法:把顶层模块 module名改成和工程名同名 最近在玩QUARTUS 11遇到此问题! 问题补充:本人用的时VERILOG HDL硬件描述语言! ...