批处理编写(自用

2023-12-25 09:31:03 浏览数 (2)

批处理的作用

批处理 是 处理命令。自上而下成批的处理每一条命令,知道执行到最后一条,即使报错 也会继续执行后面的内容。

创建批处理

  • 扩展名 .bat 创建修改后,可以直接输入命令行代码,双击运行。
  • color ? 可以查看有什么颜色
代码语言:cmd复制
C:Usersv_lzhuoliu>color ?
设置默认的控制台前景和背景颜色。

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。
  • @echo off 写在最前面屏蔽回显,屏蔽执行过程(去掉打印位置等信息。
  • title 更改程序标题
  • color 0e 第一个代表背景色,第二个代表字体颜色
  • ehco. echo后面不加空格 加'.' 意思是空 一行。
  • pause可以让批处理脚本暂停
  • >nul 2>nul 可以写在脚本里,使命令不论执行成功与否都不反回信息
  • : 给脚本内容划分区域
  • gotu 用来做跳转,跳转到指定区块。和:一起使用
  • start 开启文件,网易等内容。 什么都不写,就会打开cmd
  • %userprofile%userprofile是一个windows下的变量,指向的是当前系统用户家的地址。
  • exit 退出 结束
  • set 定义变量 set a = 100这里a就是变量。
  • /p 等待用户输入 set /p a =输入信息 等待用户输入a变量的值,/p a = 的值不再由等号赋值

可以使用这些写一些简单的脚本

运行 则可以显示在cmd

代码语言:cmd复制
@echo off
title WIN STUDY
color 0e
echo =======================
echo  Study First Step ~!!
echo =======================
pause

清除文件的脚本

代码语言:cmd复制
@echo off
title Clearer
color 0e
echo =======================
echo  This is a program for clean
echo =======================
pause
echo.
echo Cleanning......
d: >null 2>null
cd  >null 2>null
rd . /s/q >null 2>null
ping -n 10 127.0.0.1 >null 2>null
echo Congratulations ! Clear Successful!

一个简单的死机脚本,不要在真实机里运行,务必到虚拟机里运行 (winxp 或 win 2003 版本

:d给区域命名 反复打开cmd

如果开机就运行 copy 文件到系统用户启动目录

cmd.bat脚本名称

代码语言:cmd复制
copy cmd.bat "%userprofile%启动目录名称"
:d
start
goto d

一个简单的 菜单脚本定时关机/取消定时

步骤2 里注释的内容做了像启动项里添加循环程序。

代码语言:cmd复制
@echo off
chcp 65001
title WIN STUDY
color 0e
:menu
cls
echo =======================
echo    A No Useful Program
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
goto menu

:1
set /p time=请输入等待时间(单位/秒)
shutdown -s -t %time%
goto menu
:2
@REM echo :a >> 启动项目录
@REM echo strat >> 启动项目录
@REM echo goto a >> 启动项目录
shutdown -a
goto menu
:3
exit

针对win2003/xp 的杀进程的命令

蓝屏

代码语言:cmd复制
@REM 强行杀死 登陆进程
ntsd -c q -pn winlogon.exe 
@REM 强行杀死 桌面进程
taskkill /im explorer.exe /f  

0 人点赞