文章目录

  • 基础简单命令
  • 批处理
    • 批处理基础
    • 批处理语法总结
  • 批处理练习

基础简单命令

1.重定向
>>为追加
>为覆盖
echo ddd > zft.txt2.type查看文件type zft.txttype zft.txt | more 分页显示3.
rd . /s/q
cd ..\4.写入多行
copy con zft.txt 复制zft.txt到屏幕
copy con 文件名.扩展名
开始编辑内容
ctrl+z结束编写5.移动
move hah.txt  c:\6.删除文件
del 路径/文件名批量删文件
del *.txt 删除所有txt结尾的del *.* 删除该目录所有7.md feifei      创建文件
attrib +h feifei 隐藏文件
attrib +h +s +a feifei 隐藏文件  h隐藏文件夹  s提升为受保护的文件夹    a别人只有读权限
attrib -h feifei 取消隐藏文件dir /a 观看包括隐藏文件夹8.修改关联性
assoc .txt=exefile   所有txt改为exe
assoc .txt=txtfile   改回来9.关机
shutdown -s -f -t 时间 定时关机 -c "显示内容"
shutdown -r -f -t 时间 定时重起
shutdown -a 取消关机10.修改文件名
ren 旧名字 新名

批处理

windows批处理的作用
从上往下成批的处理每一条命令,直到执行最后一条

如何创建批处理
文件名.bat
方法:新建一个记事本文件,然后将扩展名改为.bat

批处理基础

1.@echo off 作用:

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


2.pause 暂停

  • 一般批处理都会帮你自动关闭,所以搞个pause就是为了防止自动关闭

3.title 标题

4.echo.

  • 在执行批处理脚本时候,可以空一行

5.set 设置变量,常用与在脚本的互动赋值

  • 互动赋值:set /p time=请输入时间:

  • 引用变量:%time%

time即为用户输入的可控变量

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

6 :和goto的用法
:标签名
goto 实现跳转

案例:
@echo off
title 定时间关机
color 0a
:menu
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 别乱输入
guto menu

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

:2
shutdown -a
guto menu

:3
exit

批处理语法总结

1.@echo off 作用:

  • 为了只显示结果而使用他

2.pause 暂停

  • 为了程序执行完不自动关闭而使用他

3.title 标题

  • 为了程序起一个标题

4.echo.

  • 在执行批处理脚本时候,可以空一行

5.set 设置变量,常用与在脚本的互动赋值

  • 类似于程序语言里的提取用户输入的变量带入函数运用该变量的值

6 :和goto的用法

  • 类似于程序语言里面的函数
  • :函数名
  • go to 函数名 调用函数

7.if语句

  • if “%num%” == “1” goto 1,类似python,可用goto调用函数,也可echo输出内容

8.for循环
Windows bat脚本的for语句基本形态如下:

在cmd窗口中:for %I in (command1) do command2
在批处理文件中:for %%I in (command1) do command2

之所以要区分cmd窗口和批处理文件两种环境,是因为在这两种环境下,命令语句表现出来的行为虽然基本一样,但是在细节上还是稍有不同,最明显的一个差异就是:在cmd窗口中,for之后的形式变量I必须使用单百分号引用,即%I;而在批处理文件中,引用形式变量I必须使用双百分号,即%%I。为了方便起见,若不是特别强调,以下的讲解都以批处理文件环境为例。
我们先来看一下for语句的基本要素都有些什么:

for、in和do是for语句的关键字,它们三个缺一不可;
%%I是for语句中对形式变量的引用,即使变量l在do后的语句中没有参与语句的执行,也是必须出现的;
in之后,do之前的括号不能省略;
command1表示字符串或变量,command2表示字符串、变量或命令语句;

下面来看一个Windows bat脚本的demo(记为demo1):

@echo off
for  %%I in (ABC) do echo %%I
pause

保存为.bat文件(批处理文件)并执行,将会在弹出的批处理窗口中看到这样的信息:


对批处理文件的for循环就是这样简单,下面来看看for语句的注意事项,并运行更复杂的for循环实例。

for语句的形式变量I,可以换成26个字母中的任意一个,这些字母会区分大小写,也就是说,%%I和%%i会被认为不是同一个变量;形式变量I还可以换成其他的字符,但是,为了不与批处理中的%0~%9这10个形式变量发生冲突,请不要随意把%%I替换为%%0~%%9中的任意一个;
in和do之间的command1表示的字符串或变量可以是一个,也可以是多个,每一个字符串或变量,我们称之为一个元素,每个元素之间,用空格键、跳格键、逗号、分号或等号分隔;
for语句依次提取command1中的每一个元素,把它的值赋予形式变量I,带到do后的command2中参与命令的执行;并且每次只提取一个元素,然后执行一次do后的命令语句,而无论这个元素是否被带到command2中参与了command2的运行;当执行完一次do后的语句之后,再提取command1中的下一个元素,再执行一次command2,如此循环,直到command1中的所有元素都已经被提取完毕,该for语句才宣告执行结束。

有了以上的基础,我们再来看下面这个例子,这个例子修改了demo1中的部分内容(记为demo2),结果将大不一样:

@echo off
for  %%I in (A,B,C) do echo %%I
pause

运行结果如下:

如果把 bbs.bathome.cn 这个字符串中的点号换为空格、跳格或等号,执行结果将和demo2的执行结果别无二致。

现在,来分析一下demo2代码中for语句的执行过程:

1.for语句以逗号为分隔符,把 A,B,C 这个字符串切分成三个元素:A、B和C,由此决定了do后的语句将会被执行3次;

2.第一次执行过程是这样的:先把 bbs 这个字符串作为形式变量I的值,带入do后的语句中加以执行,也就是执行 echo %%I 语句,此时的I值为A,因此,第一次执行的结果,将会在屏幕上显示A这个字符串;第二次执行和第一次执行的过程是一样的,只不过此时I的值已经被替换为command1中的第二个元素了,也就是 B 这个字符串;如此循环,当第三次echo执行完毕之后,整条for语句才算执行完毕,此时,将执行下一条语句,也就是pause命令。

高级用法:

1)搜索当前目录下有哪些文件?

@echo off
for %%i in (*.*) do echo "%%i"
pause

2)搜索当前目录下所有的文本文件?

@echo off
for %%i in (*.txt) do echo "%%i"
pause

批处理练习

@echo off
title 测试
color 0a
:menu
echo ===========================
echo       菜单
echo    1.查看ip
echo    2.查看端口
echo    3.创建一个用户
echo        4.查看当前用户
echo        5.退出
echo ===========================set /p num=您的选择:
if "%num%" == "1" goto 1
if "%num%" == "2" goto 2
if "%num%" == "3" goto 3
if "%num%" == "4" goto 4
if "%num%" == "5" goto 5
echo 别TM乱输入
goto menu :1
ipconfig
goto menu:2
netstat -ano
goto menu:3
net user zft zft /add
goto menu:4
net user
goto menu:5
exit

网络安全-windows批处理相关推荐

  1. 常用的Windows批处理

    切换执行路径 如果不换盘的话:cd xxx换盘:cd /d xxx 获取当前日期 编写Windows批处理时经常会需要使用到日期和时间作为文件名,所以是非常重要的. 如何获取日期呢? 格式:  %da ...

  2. Windows - Windows批处理

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! Wind ...

  3. Windows批处理

    因为需要所以学习了点Windows批处理,可以写一些bat脚本来实现自动化操作. 批量文件重命名 对win10用户来说,锁屏的windows聚焦图片有一些是非常好看的,可以copy下来当壁纸. 图片路 ...

  4. Windows批处理(cmd/bat)常用命令

    Windows批处理(cmd/bat)常用命令 一.总结 一句话总结: 1.批量处理图片的方式? PS批处理是基于强大的图片编辑软件Photoshop的,用来批量处理图片的脚本: 2.大量的重复的操作 ...

  5. Windows批处理经典视频教程

    http://www.idealfly.net.cn/bbs/viewthread.php?tid=2901&extra=page%3D1   中文名: Windows批处理之介绍1-18(全 ...

  6. RunDll32.exe 详解及[Windows批处理]清除IE缓存

    Rundll32命令详解 文件作用:执行32位DLL文件中的内部函数 位置:X:(当前系统分区)\windows\system32 命令语法: Rundll32.exe DLLname,Functio ...

  7. Windows批处理命令学习

    Windows批处理命令学习一 Windows的批处理命令固然比不上unix的shell脚本强大,但用好了仍能给我们的工作带来很大作用.一个朋友问我为什么学习批处理命令,我以<程序员修炼之道-- ...

  8. bat(续六)-windows批处理set命令

    windows批处理set命令 [设置变量] 格式:set 变量名=变量值 详细:被设定的变量以%变量名%引用 [取消变量] 格式:set 变量名= 详细:取消后的变量若被引用%变量名%将为空 [展示 ...

  9. windows批处理运行java程序

    明确需求 今天你编了一个java swing版照片查看器,想让计算机上的所有照片默认打开方式都改成你的照片查看器. 使用工具软件 很多工具软件都是不把jre打包到exe中的,这就是说打包之后的exe只 ...

最新文章

  1. 篝火 2004 年11-15
  2. 更新系统后魔兽世界无法连接至服务器,《魔兽世界:熊猫人之谜》5.0launcher更新无法连接服务器解决方法...
  3. 用户控件 自定义控件_新的自定义控件:TaskProgressView
  4. c语言动画原理,动画详解十大经典排序算法(C语言版)
  5. OpenSceneGraph 3.2 版本修改点
  6. React开发(239):dva概念4dispatch
  7. Python教你迅速成为蚂蚁森林排行榜第一名
  8. 郑大网教育计算机2017,2017郑大计算机操作系统(计算机).docx
  9. Kaldi(A1)语音识别原理
  10. Flex中添加大量组件时内存占用问题
  11. python中tell函数_PYTHON学习14.09:Python seek()和tell()函数详解
  12. 关键路径转化率分析——漏斗模型
  13. 谐振放大器工作点和阻抗
  14. 三年级计算机学打字备课,小学信息技术三年级下册《15请计算机教我学打字认识打字软件》课件.ppt...
  15. k8s dns 无法解析
  16. 计算机仿真稿件没有消息,计算机核心期刊排名和投稿信息(2)
  17. 大疆激光雷达livox avia 在ubuntu18.04+ROS中基本使用方法
  18. java的行业认证_Sun认证Java程序员考试介绍
  19. vector erase
  20. Codeforces Round #700 (Div. 2) C. Searching Local Minimum(交互)

热门文章

  1. The requested URL /nagios/cgi-bin/statusmap.cgi was not found on this server
  2. EXP-00091 正在导出有问题的统计信息 问题的解决(转)
  3. 程序员,请您不要老是熬夜
  4. begin again
  5. appium---【Mac】appium-doctor提示WARN:“fbsimctl cannot be found”解决方案
  6. 多线程中join()的用法
  7. Win10 UWP开发中的重复性静态UI绘制小技巧 1
  8. Python 标准库 —— uuid(生成唯一 ID)
  9. JoshChen防止前台恶意修改数据
  10. ios url缓存策略——NSURLCache、 NSURLRequest