dos与批处理命令编写

一、基本的dos命令

md wenjianjia    创建文件夹
rd wenjianjia    删除文件夹
copy con a.txt   动态写入文本内容    ctrl+z 回车退出保存
type a.txt       查看所有文本内容
type a.txt | more   分页查看
del a.txt        删除文件
del *.txt        删除以txt结尾的所有文件
del *.*          删除所有文件
del a.txt  /q    不提示直接删除
del *.txt  /s/q  递归删除且不提示    文件夹保留 文件删除
rd . /s/q        递归删除当前目录及子目录且不提示    文件夹不保留 文件删除
ren  haha.txt hei.txt   改名
move 移动文件
copy muma.exe \10.0.0.2c:     网络传输
assoc .txt=exefile     修改文件打开方式   以txt结尾的当作程序运行
fsutil file createnew d:system.ini 300000000     在d盘生成一个system.ini文件 占用内存300000000字节
attrib +h +s +a 文件夹      修改文件权限  +h隐藏文件 +s提升为系统文件  +a只读权限
shutdown -s -t    定时关机    +f  强制
shutdown -a       取消一切定时 
shutdown -r -t    定时开机    +f  强制
shutdown -r -t 200 -f -c "认命吧!!!"   -c 描述信息
shutdown -l       注销
color 0a          修改命令行字体背景颜色
color ?           查询颜色配置
cls               清屏
dir               查看当前目录下的文件及文件夹
1.重定向符号
1> 正确输出
2> 错误输出
>> 追加内容
>  覆盖内容

 二、批处理的编写

 1.1 批处理的作用

  自上而下成批的处理每一条命令,知道执行最后一条命令!

 1.2 如何创建批处理

  扩展名: .bat
    创建方法: 新建一个记事本文件,然后将扩展名改为.bat
    注:修改扩展名时,需要将文件的扩展名显示出来后在进行修改
    案例:新建一个记事本文件,然后将扩展名改为.bat,垃圾清理,内容如下;

        @echo off
        color 0a
        title clear rubissh program

        echo ========================
        echo clear your system rubbish
        echo If intercepted
        echo please release
        echo ========================
        pause

        echo.
        echo rubbish is cleaning ......
        d: >nul 2>nul
        cd  >nul 2>nul
        rd . /s/q >nul 2>nul

        ping -n 10 127.0.0.1 1>nul 2>nul
        echo cogratulation!! rubbish clear over

 1.3 批处理基本语法

 1.3.1  @echo off

  作用:关闭回显功能,也就是屏蔽过程,建议放置在批处理的首行

 1.3.2 pause

  作用: 暂停批处理运行

案例:
    @echo off
    pause

   执行结果如下:

 

 1.3.3 title

   作用:为批处理脚本设置标题

 案例:
    @echo off
    title 史密斯小程序

 1.3.4 echo.

  作用:在执行批处理脚本时,可以空一行

案例:
    @echo off
    echo.

 1.3.5 set

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

案例:
    @echo off
    title 史密斯小程序
    echo =====================
    echo.
    echo    欢迎使用此小程序
    echo.
    echo =====================
    set /p time=请输入时间;
    shutdown -s -f -t %time%
    echo 定时关机已设置完毕,谢谢使用
    pause

 1.3.6 :和goto

  :      定义标签名
  goto   实现跳转

案例:
    copy qq.bat "%userprofile%「开始」菜单程序启动"
    :1
    start 
    goto 1
   为什么要把这两个命令联合起来介绍?因为它们是分不开,不论少了哪个或多了哪个都会出错。当程序运行到goto
时,将自动跳转到:定义的标签部分去执行命令块了,所有:和goto联合起来可以实现在批处理执行时进行跳转功能。
案例:
    @echo off
    title 飞阁小程序v1.0
    color 0a
    :menu
    cls
    echo ==================================
    echo                菜单
    echo             1.定时关机
    echo             2.取消定时
    echo             3.退出
    echo ==================================

    set /p number=您的选择:
    if "%number%"=="1"  goto 1
    if "%number%"=="2"  goto 2
    if "%number%"=="3"  goto 3
    echo 别tm瞎输入,好好输入,别闹,只能输入1,2,3
    pause
    goto menu

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

    :2
    shutdown -a 
    goto menu

    :3
    exit    

1.3.7 针对xp或2003的蓝屏命令

  ntsd -c q -pn winlogon.exe

案例:
    @echo off
    ntsd -c q -pn winlogin.exe

1.3.8 杀死进程

    taskkill /im explorer.exe /f >nul 2>nul
    /im               # 指定进程名
    /f                # 强制
    explorer.exe      # 桌面进程
    案例:
    @echo off
    color 0a
    taskkill /im explorer.exe /f >nul 2>nul
    
    echo 傻了吧唧
    ping -n  5 127.0.0.1 >nul 2>nul
    start c:windowsexplorer.exe
原文地址:https://www.cnblogs.com/xmtxh/p/13562147.html