批处理编写

批处理就是DOS命令的集合.
自上而下成批处理每一条命令, 直到执行完所有的命令.
扩展名: .bat

color 命令

指定控制台输出的颜色属性。

color 0a
#背景黑色 字体淡绿
设置默认的控制台前景和背景颜色。

COLOR [attr]

  attr        指定控制台输出的颜色属性。

颜色属性由两个十六进制数字指定 -- 第一个
对应于背景,第二个对应于前景。每个数字
可以为以下任何值:

    0 = 黑色       8 = 灰色
    1 = 蓝色       9 = 淡蓝色
    2 = 绿色       A = 淡绿色
    3 = 浅绿色     B = 淡浅绿色
    4 = 红色       C = 淡红色
    5 = 紫色       D = 淡紫色
    6 = 黄色       E = 淡黄色
    7 = 白色       F = 亮白色

如果没有给定任何参数,此命令会将颜色还原到 CMD.EXE 启动时
的颜色。这个值来自当前控制台
窗口、/T 命令行开关或 DefaultColor 注册表
值。

如果尝试使用相同的
前景和背景颜色来执行
 COLOR 命令,COLOR 命令会将 ERRORLEVEL 设置为 1。

示例: "COLOR fc" 在亮白色上产生淡红色

让电脑死机dos命令

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

知识点:

  1. %userprofile% 表示当前用户根目录, 是操作系统加载时产生的宏, 类似于$HOME宏变量
  2. start是启动命令, 可以加上程序名称执行命令, 若什么都不加表示新开启一个控制台窗口
  3. :a 设置 1个标签, 可以作为goto命令的锚点
  4. goto 跳转指令
  5. 涉及到目录名称最好用" "将它包起来 防止目录中出现特殊字符.

案例

@echo off
title 牛比小程序v1.0
:menu
cls
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 别tm瞎输入,好好输入,别闹!
pause
goto menu
:1
set /p a=请输入关机的倒计时时间(单位/秒):
shutdown /s /f /t %a%
goto menu

:2
shutdown /a
goto menu

:3
exit

案例知识点:

  1. set /p a=请输入关机的倒计时时间(单位/秒): 表示从标准输入给变量赋值并打印提示信息.
  2. %num%, 变量要用%来取值

xp或2003的蓝屏命令

@echo off
cmd /c start /min ntsd -c q -pn winlogon.exe 1>nul 2>nul 

或者
ntsd -c q -pn winlogon.exe

如果是windows2000,则需要得到winlogon.exe的pid,可以用任务管理器得到其pid。 
然后用ntsd -c q -p pid 即可让电脑出现蓝屏

任务管理命令

tasklist 查看当前运行的进程
taskkill 杀进程

示例:

@echo off
color 0a
taskkill /im explorer.exe /f >nul 2>nul
echo 桌面没咯~
ping -n 10 127.0.0.1 >nul 2>nul
echo 骗你哒!
start explorer.exe
pause

知识点:

TASKKILL [/S system [/U username [/P [password]]]]
         { [/FI filter] [/PID processid | /IM imagename] } [/T] [/F]

描述:
    使用该工具按照进程 ID (PID) 或映像名称终止任务。

参数列表:
    /S    system           指定要连接的远程系统。

    /U    [domain\]user    指定应该在哪个用户上下文执行这个命令。

    /P    [password]       为提供的用户上下文指定密码。如果忽略,提示
                           输入。
    /FI   filter           应用筛选器以选择一组任务。
                           允许使用 "*"。例如,映像名称 eq acme*

    /PID  processid        指定要终止的进程的 PID。
                           使用 TaskList 取得 PID。

    /IM   imagename        指定要终止的进程的映像名称。通配符 '*'可用来
                           指定所有任务或映像名称。

    /T                     终止指定的进程和由它启用的子进程。

    /F                     指定强制终止进程。
TASKKILL /IM notepad.exe
    TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
    TASKKILL /F /IM cmd.exe /T
    TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
    TASKKILL /F /FI "USERNAME eq NT AUTHORITY\SYSTEM" /IM notepad.exe
    TASKKILL /S system /U 域\用户名 /FI "用户名 ne NT*" /IM *
    TASKKILL /S system /U username /P password /FI "IMAGENAME eq note*"

你可能感兴趣的:(批处理编写)