欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

dos bat 命令 入门视频教程 有大用 有大大用 有大大大用 有大大大大用

https://www.bilibili.com/video/BV1Qv411q7bN/?spm_id_from=333.337.search-card.all.click&vd_source=346847773d1f74962a4daab9ddf7f228


https://www.bilibili.com/video/BV1b5411473Y/?spm_id_from=333.337.search-card.all.click&vd_source=346847773d1f74962a4daab9ddf7f228


https://search.bilibili.com/all?vt=28531003&keyword=dos%E5%91%BD%E4%BB%A4%E6%95%99%E7%A8%8B&from_source=webtop_search&spm_id_from=333.1007&search_source=2


1) P1 1-1 批处理初体验

@echo off
echo hello word
pause

@echo off #关闭原始的输入,,直接输出对应的结果,,,关闭回显的意思,,不显示正在执行的批处理命令


pause #等待任意键的输入,不直接关闭黑窗口


windows不区分大小写


#ipconfig          #ip信息

#clr            #清屏

内置命令 /node-admin/20155

image.png2)  P2 2-1 批处理运算操作-算术运算

set /a 1+3               #set命令   /a 表示要执行算术运算       a是  Arithmetic (算术运算)的意思

set /a var = 1+2            #赋值是不需要在分号   

echo %var%           #前后百分号表示一个变量,用来输出


@echo off
set /a var = 10*(10-6)
echo %var%

pause


3)  P3 2-2 批处理运算操作-重定向操作运算

image.png

dir #查看当前目录下面的目录和文件

echo "hello world" > a.txt        # >  尖括号,, 把文本输出到文件

notepad a.txt        #查看文件内容

type a.txt        #在命令行查看文本文件的内容

echo "hello world" >> a.txt        # >>  两个尖括号,, 把文本追加到文件


dos 命令中 左尖括号 示例

在DOS命令行(CMD)中,左尖括号<通常用于重定向输入(input redirection)。它允许你将文件的内容作为命令的输入。例如:

cmd
command < input.txt

在这个例子中,command 是你要执行的命令或程序,而 input.txt 是一个文本文件。当你运行这个命令时,command 将从 input.txt 文件中读取内容作为其标准输入(而不是从键盘读取输入),这对于批处理操作或者自动化脚本非常有用。

例如,假设你有一个文本文件 data.txt,你想使用 find 命令搜索其中包含特定字符串的行,你可以这样操作:

cmd
find "example" < data.txt

这将会输出 data.txt 文件中包含 "example" 字符串的所有行。




4)  P4 2-3 批处理运算操作-多命令令运算

image.png

&&  两个与符号 与运算

||      两个或符号 或运算


#  aaa && ipconfig   #与运算,前面错误,后面不执行

#  ipconfig && net user  #与运算,前面正确,后面才执行

#  net user  #查看当前计算机所对应的系统帐号


#  aaa || ipconfig   #或运算,前面错误,后面仍然会执行

#  ipconfig || net user  #或运算,前面正确,后面就不会执行


5)  P5 2-4 批处理运算操作-管道操作运算

image.png

A | B    #管道运算符,A命令的输出作为B命令的输入

#mkdir         #创建目录

windows 中以后缀名来区分文件类型

#dir | find ".txt"        #| 竖线,表示管道


下图

19 代表文件大小 19个字节

image.png


#netstat -ano        #netstat,显示网络状态的命令

下图 这些0表示未建立连接

image.png

#netstat -ano | find "ESTABLISHED"        #筛选出已建立连接的网络连接



6)  P6 3-1 基本命令格式介绍

/?            #斜杠问号来查看对应的命令的帮助信息


设置黑窗口 字体大小

image.png

image.png


# net 主命令下可以看到对应的子命令

image.png

#net /?

image.png

#net user        #输出本地所具有的用户帐号信息

image.png


#net user /?

[ ] 表示可选

| 竖线表示或者

{}大括号 通常用于表示可选项或一组选项中的选择。在命令的语法描述中,它用来说明你可以从给出的一组选项中选择一个或多个来使用。

image.png


#net user test test /add        #增加用户test,密码为test  这两个 test是参数,,,net是主命令 user是子命令 /add是操作,是选项


/help  获得帮助信息

#net user /help     #

image.png


image.png

7)  P7 3-2 批处理文件接受参数

image.png

2.bat test1 test2            #  %1 替换为了 test1,,,,, %2 替换为了 test2 


@echo off
echo %1
echo %2
net user %1 %2 /add
pause


#net user         # 可以看到新建的用户  test1

image.png


8)  P8 3-3 注释符介绍

#rem 注释内容,,,,

@echo off
rem program for add user
echo %1
echo %2
rem use: 2.bat user password
net user %1 %2 /add
pause


net user test1 /delete        #删除用户 test1

type 2.bat        #查看文件内容



9)  P9 3-4 炫酷命令提示符窗口

image.png

image.png

 # color /?

image.png


# color 0a            #只能单次设置,不能永久设置

image.png



image.png



#title /?   #修改窗口标题  查看帮助信息

image.png


#title "hack"     #窗口标题变了

image.png

10)  P10 3-5 时间相关命令介绍

image.png

date 命令 有关日期 ,time命令有关时分


#date   #修改日期

image.png

#date  /?      #查看date帮助信息

image.png


#date  /T         #仅仅显示查看


# time   #时间 修改时间

image.png

#time  /?      #查看time帮助信息

image.png


#time  /T         #仅仅显示查看

image.png

11)  P11 3-6 启动命令介绍与使用

image.png

#start /?

image.png


#start #启动一个新的dos窗口


#start #启动一个新的dos窗口,,,标题为 AAA

image.png



C:\Users\Administrator\Desktop\vsode_test>start C:\            #启动windows窗口,其路径为C:\


C:\Users\Administrator\Desktop\vsode_test>start /D C:\          #启动dos黑窗口,其路径为C:\


#start 1.bat   #直接启动运行 1.bat                 ,,1.bat 文件在当前路径下

image.png


以管理员来运行 cmd

image.png


# start /B 2.bat     # /B 不会在新窗口中执行    ,,,,,没有用户名密码参数,创建失败了           

image.png


#start /B 2.bat test2 test2        #给用户名密码参数,创建成功了

image.png

image.png


12)  P12 3-7 调用其他bat文件

#call  2.bat  # 在一个批处理文件中调用另一个批处理文件

#call  2.bat  %1   # 可以传递参数 (但是视频里说无法传递参数)

image.png

13)  P13 3-8 任务列表查看命令介绍

image.png#tasklist    #获取本地任务列表


#tasklist /?    #查看帮助信息,,,,,,可以深入研究一下

/S 后面跟计算机名称或ip  /S 是 指定(specifies)的意思 Specifies the name or IP address of a remote computer

/U 后面跟用户名

/P 后面跟密码

image.png

4.png

#tasklist /S 192.168.80.111 /U Administrator /P 1234


#tasklist  /FI  "status eq unknown"     #FI是筛选器   ,,,状态是不知道的

#tasklist  /FI  "status eq running"     #FI是筛选器   ,,,状态是运行的

#tasklist /FI   "PID EQ 11584"     #FI是筛选器   ,,,PID是11584

#tasklist /FI   "PID EQ 11584"  /FO table    #FI是筛选器   ,,,PID是11584,,,格式为table 格式(table格式是默认的)

#tasklist /FI     "PID EQ 11584"  /FO list         #FI是筛选器   ,,,PID是11584,,,格式为list 格式

#tasklist /FI     "PID EQ 11584"  /FO list         #FI是筛选器   ,,,PID是11584,,,格式为csv 格式

#tasklist /FI     "PID EQ 11584"  /FO list   > test.csv       #FI是筛选器   ,,,PID是11584,,,格式为csv 格式,,,重定向到一个csv文件当中

image.png

* 星号表示任意字符,任意长度的字符  *.txt 包含  1.txt 12.txt ,a.txt

14)  P14 3-9 任务终止命令介绍

#taskkill  杀死任务,终止任务,,使用该工具按照进程 ID (PID) 或映像名称终止任务。


#taskkill /im notepad.exe            #关闭记事本程序

#taskkill /pid 11680 /T                #关闭pid为11680的进程   /T 表示同时关闭相关的子进程

image.png

#taskkill /S 192.168.80.111 /U Administrator /P 1234 /FI "pid eq 744" /F  /T     #远程主机一定要使用 /F (force)强行终止  /FI是过滤器作用 ,,,/T tree树的意思,是指同时关闭子进程

 /S 是远程计算机名或远程ip地址,/U是用户名,/P是密码


#tasklist /FI "IMagename eq notepad.exe"  #在远程主机上执行这个,发现找不到了

#tasklist /FI "pid eq 774"  #在远程主机上执行这个,也发现找不到了 (这个774 就是notepad.exe  的pid,进程id)

15)  P15 3-10 文件夹结构命令tree介绍

#tree /?

image.png

# tree         #显示当前路径下的文件夹 树形结构,包括所有子文件夹(包括嵌套的)

image.png

# tree  /A       #显示当前路径下的文件夹 树形结构,,使用ascii字符

# tree  /A  /F  #/F表示还显示文件  当然还包括所有子文件夹及子文件夹下面的文件(包括嵌套的)

image.png

# dir         #显示目录不能看到子文件夹下面的内容

# tree C:\Users\Administrator\Desktop /A /F            #这里指定某个路径 C:\Users\Administrator\Desktop

    

16)  P16 3-11 关机命令介绍与使用

5.png


#shutdown /i         #图形化界面关机 /i表示的是GUI的缩写吧

image.png


image.png

我这里报错了,显示 连接到注册表失败。(1326)     #我这边可能没有远程关机的权限

image.png

# shutdown /l         # 注销  /l 表示logout 注销的意思 

# shutdown /a        # 中止 关机或重启   /a 表示abort 中止的意思 


 # shutdown /p      #/p  立即关闭,,,      关闭本地计算机,没有超时或警告。  可以与 /d 和 /f 选项一起使用。

 # shutdown /h        #/h  冬眠,与  /f 一起使用


     /hybrid    执行计算机关闭并进行准备以快速启动。  必须与 /s 选项一起使用。

    /fw        firmware,,,,,与关闭选项结合使用,使下次启动转到固件用户界面。

     /e         记录计算机意外关闭的原因。

    /o         转到高级启动选项菜单并重新启动计算机。               必须与 /r 选项一起使用。

    /m \\computer 指定目标计算机。


     /t xxx     将关闭前的超时时间设置为 xxx 秒。    有效范围是 0-315360000 (10 年),默认值为 30。      如果超时期限大于 0,则 /f 参数为            /f 参数。

    /c "comment" 注释重启或关闭的原因。               最多允许 512 个字符。

    /f         强制关闭正在运行的应用程序而不事先警告用户。 当大于 0 的值为 时,隐含 /f 参数 则默示为 /f 参数。


# shutdown /p      #最常用的快速关机,仅能关闭本机,,,,“/p”本身并不是一个标准的英文单词缩写,但在上下文中我们可以理解它代表了“Planned”或“Power-off”的含义。



17)  P17 3-12 计划任务命令at

# at /?

image.png

# at 21:56 "notepad.exe"        #创建一个任务

在 win10 中已弃用了,至少在 Windows 10 家庭版 21H2  19044.2486 中弃用了

# at                     #查看任务

# at   1 /delete                   #删除任务,,,这里 1 表示的 任务的id


# at 17:23 "notepad.exe"        #创建一个任务

到了17:23的时候,界面没有弹出记事本,在任务管理器中可以看到

image.png


dos at 命令用法 通义

在DOS命令行环境下,at 命令主要用于安排在指定时间执行一个命令或批处理文件。以下是 at 命令的基本用法:

shell
at [time] [/interactive] [/every:date[,...]] command 选项说明: - time: 指定运行命令的时间,格式可以是 HH:mm(小时:分钟)或者 HH:mm:ss(小时:分钟:秒),如 "14:30" 或 "16:45:00"。 - /interactive: 如果指定此参数,命令执行时会打开一个交互式窗口,即使命令是以系统服务账户运行也是如此。 - /every:date[,...]: 表示在每周或每月的指定日期重复执行命令,比如 "/every:Monday,Friday" 会在每周一和周五执行命令。 - command: 要在指定时间执行的命令或程序的完整路径及参数。 示例: 1. 安排在下午2点执行某个批处理文件:

at 14:00 C:\path\to\your_batch_file.bat

code
2. 安排每天凌晨1点执行某项任务,并且允许任务在运行时与用户交互:

at 01:00 /interactive C:\path\to\your_program.exe arg1 arg2

code
3. 每周日早上8点执行一项任务:

at 08:00 /every:sunday "C:\Program Files\Application\app.exe"

code
请注意,在某些Windows版本中,计划任务已经被更强大的“任务计划程序”所替代,而`at`命令可能不再可用或不推荐使用。如果你正在使用的系统支持任务计划程序,请考虑使用它来创建定时任务。


# at 22:00 /every:M.T.W.Th.F.S.Su "notepad.exe"  每天22:00 执行 notepad.exe


任务计划程序  schtasks 见  /node-admin/20167


18)  P18 3-13 环境变量介绍

C:\Users\Administrator>set    #要以查看所有的环境变量

ALLUSERSPROFILE=C:\ProgramData

APPDATA=C:\Users\Administrator\AppData\Roaming

ChocolateyInstall=C:\ProgramData\chocolatey

ChocolateyLastPathUpdate=132995972809296650

CommonProgramFiles=C:\Program Files\Common Files

CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files

CommonProgramW6432=C:\Program Files\Common Files

COMPUTERNAME=WIN-AERTDQBH144

ComSpec=C:\Windows\system32\cmd.exe

DriverData=C:\Windows\System32\Drivers\DriverData

FPS_BROWSER_APP_PROFILE_STRING=Internet Explorer

FPS_BROWSER_USER_PROFILE_STRING=Default

HOMEDRIVE=C:

HOMEPATH=\Users\Administrator

JAVA_HOME=D:\Program Files\Java\jdk1.8.0_341

LOCALAPPDATA=C:\Users\Administrator\AppData\Local

LOGONSERVER=\\WIN-AERTDQBH144

NUMBER_OF_PROCESSORS=4

OneDrive=C:\Users\Administrator\OneDrive

OS=Windows_NT

Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files\dotnet\;d:\Program Files\Git\cmd;C:\Program Files\EmEditor;C:\ProgramData\chocolatey\bin;D:\Program Files\nodejs\;D:\Program Files (x86)\Brackets\command;C:\Users\Administrator\AppData\Local\Microsoft\WindowsApps;C:\Users\Administrator\.dotnet\tools;D:\Users\Administrator\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\Administrator\AppData\Local\GitHubDesktop\bin;C:\Users\Administrator\AppData\Roaming\npm;D:\Users\Administrator\AppData\Local\Programs\Fiddler;C:\Program Files\JetBrains\PyCharm 2023.1.3\bin;;C:\Program Files\JetBrains\PyCharm Community Edition 2023.2.1\bin;

PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC

PROCESSOR_ARCHITECTURE=AMD64

PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 58 Stepping 9, GenuineIntel

PROCESSOR_LEVEL=6

PROCESSOR_REVISION=3a09

ProgramData=C:\ProgramData

ProgramFiles=C:\Program Files

ProgramFiles(x86)=C:\Program Files (x86)

ProgramW6432=C:\Program Files

PROMPT=$P$G

PSModulePath=C:\Program Files\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules;C:\Program Files (x86)\ISDecisions\UserLock\Modules

PT7HOME=C:\Program Files\Cisco Packet Tracer 7.3.0

PUBLIC=C:\Users\Public

PyCharm=C:\Program Files\JetBrains\PyCharm 2023.1.3\bin;

PyCharm Community Edition=C:\Program Files\JetBrains\PyCharm Community Edition 2023.2.1\bin;

QT_DEVICE_PIXEL_RATIO=auto

SESSIONNAME=Console

SystemDrive=C:

SystemRoot=C:\Windows

TEMP=C:\Users\Administrator\AppData\Local\Temp

TMP=C:\Users\Administrator\AppData\Local\Temp

USERDOMAIN=WIN-AERTDQBH144

USERDOMAIN_ROAMINGPROFILE=WIN-AERTDQBH144

USERNAME=Administrator

USERPROFILE=C:\Users\Administrator

VBOX_MSI_INSTALL_PATH=D:\Program Files\Oracle\VirtualBox\

VSTO_LOGALERTS=0

windir=C:\Windows


C:\Users\Administrator>


#echo %OS%        # 输出 OS 环境变量的值




19)  P19 4-1 目录浏览命令dir

# dir  #显示当前目录下面的文件和文件夹  directory

# dir /?

image.png

# dir /A  # 查看所有文件和文件夹,包括隐藏的

# dir /AH  #仅查看隐藏的文件和隐藏的目录

# dir /L     #所有的文件和文件夹用小写,,L就是 litter 的缩写


 /O          用分类顺序列出文件。  排列顺序     N  按名称(字母顺序)     S  按大小(从小到大)

               E  按扩展名(字母顺序)   D  按日期/时间(从先到后)

               G  组目录优先           -  反转顺序的前缀



20)  P20 4-2 目录新建与删除命令

# mkdir test        #创建目录

# mkdir /?

 md 是 mkdir 的缩写

image.png

#mkdir a\b\c\d          #至少创建目录时,用反斜杠,不用正斜杠  

#mkdir \e\f                # \e 则会创建在盘符的根目录下,比如 C盘下面


#rmdir             # 删除目录,,,,remove directory 的缩写

#rmdir /?

rd 是 rmdir 的缩写

#rmdir   /S  目录名        #/S 删除目录树,会删除子的内容 (即会删除非空目录) /S就是sub directory   (也可以理解为specified ) /S    Deletes a directory tree (the specified directory and all its subdirectories, including all files).

#rmdir   /S  /Q 目录名        #删除目录树,会删除子的内容 (即会删除非空目录),,Q,就是安静模式,删目录树的时候,不要求确认,直接删除

image.png

         


21)  P21 4-3 目录切换命令cd

# cd             #不加参数,显示当前的目录名

# cd  a   #切换到a目录下

# cd /?        #帮助命令 进行查看

cd 是 chdir 的缩写 chdir(change directory)

#cd  /D  D:\     # /D 不仅可改变目录,还可以改变当前驱动器(比如从C盘某目录到D盘某目录)  (没有 /D,,是不能从C盘切换到D盘的,,只能 D: ,,再执行 cd D:\aaa)

image.png

# dir 

这里 一个点.表示当前目录

这里 两个点.表示上一级目录

image.png

# cd ..            #cd  两个点.. 回到上一级目录

# rd c              #就是rmdir c  ,,,,,删除c目录


22)  P22 4-4 目录重命名命令ren

    ren:    rename 重命名的缩写

# ren b b1        #把b文件夹(文件) 重命名为 b1    先是源(旧的也就是 b)  再是目的(新的也就是 b1)

# ren /?

ren 也就相当于 rename 这个命令

# ren 源文件路径 目标文件名            #目标文件名可以不要路径,,,,,,直接文件名就可以了

image.png


23)  1P23 4-5 目录拷贝命令copy

# copy test2 test1            把test2 里面的所有内容复制到 test1文件夹里面 ,,把不是把test2文件夹复制到test1文件夹下面

在 linux 中  copy -a test2 test1 ,,,是把整个test2  复制到 test1 下面

# rmdir  test1     #会提示目录不为空,无法删除

# rmdir /S test1         #能删除 test1 目录,但是会提示是否确认删除

# rmdir /S /Q test1         #静默模式删除 test1 目录,没有确认删除的提示


24)  P24 4-6 文件删除命令del

#del test\1.txt  删除文件

#  del 1\*.txt            #删除1 目录下的所有的txt 文件

# del /?

del 与  erase 命令 是相同的作用

image.png

25)  P25 4-7 文件剪切命令move

# move /?

image.png

#move 1.txt test.txt          #重命名文件 1.txt是源文件名    test.txt是目的文件名     

#move  1\test.txt 2            #路径应该用反斜杠,  这里是把1\text.txt 文件移动到 2 目录下

#move  1\test.txt 2\1.txt                #路径应该用反斜杠,  这里是把1\1.txt 文件移动到 2 目录下,并且重命名的名称是 1.txt,,,,

# move /?

  /Y                      取消确认覆盖一个现有目标文件的提示。

  /-Y                     对确认覆盖一个现有目标文件发出提示。


dos move /Y  /-Y  用法 示例


在DOS命令行(或Windows命令提示符)中,move 命令用于移动文件和目录。参数 /Y/-Y 用来控制是否自动确认覆盖现有目标文件或目录的行为。

  1. /Y 参数: 当移动文件时,如果目标位置已经有同名文件存在,/Y 参数会使得 move 命令在不询问用户的情况下直接覆盖目标文件。这对于批处理脚本自动化操作尤其有用,避免了交互式的确认提示。

     

    示例:

    cmd
    move /Y C:\source\example.txt D:\destination\

    如果 D:\destination\example.txt 已经存在,则使用 /Y 参数后,该文件会被新移动过来的 C:\source\example.txt 文件无条件覆盖

  2. -Y 参数理论上并不存在于标准 move 命令中,至少在Microsoft Windows的CMD环境中不是合法选项。不过,在某些情况下可能有文档误写或者其它操作系统或版本的变体中提供类似功能的参数。

  3. 默认行为: 若未指定 /Y 参数,当目标位置已有同名文件时,系统通常会提示用户确认是否要覆盖目标文件。

注意:在实际使用时,请根据您的操作系统提供的具体命令语法来操作。上述信息基于Microsoft Windows环境下的 move 命令。




dos move命令的用法和示例如下:

用法: move [source] [destination]

参数: /Y:在目标文件已经存在的情况下,自动覆盖目标文件 /-Y:在目标文件已经存在的情况下,不覆盖目标文件,而是询问用户是否覆盖

示例:

  1. 将文件a.txt移动到文件夹folder下,如果目标文件夹下已经存在同名文件,则自动覆盖。 move a.txt folder /Y

  2. 将文件a.txt移动到文件夹folder下,如果目标文件夹下已经存在同名文件,则询问用户是否覆盖。 move a.txt folder /-Y

请注意,在使用move命令时,source表示要移动的文件或文件夹,destination表示目标位置。使用/Y参数可以自动覆盖目标位置的同名文件,使用/-Y参数可以询问用户是否覆盖目标位置的同名文件。




image.png

26)  P26 5-1 用户操作命令

#net user /?

image.png

#net user /help    #查看详细的帮助信息

image.png

#net user   #查看当前系统中所有用户的用户名

# net user test4   #查看当前系统中某个用户的详细信息

# net user test4  /delete         #删除这个用户

# net user test8 1234 /add        #新建用户 ,用户名是 test8,密码是1234


27)  P27 5-2 用户组操作命令

# net localgroup        #查看我们当前系统当中所具有的这些用户组

*Administrators        #管理员组

*Users        #普通用户组

image.png


# net localgroup administrators test8 /add    # 在本地管理员组中添加用户test8,,,,,administrators 是管理员组,,,,test8是用户  

#net user test8

#可以看到 test8 具有管理员的权限

image.png

# net localgroup /help            #查看帮助信息

image.png

# net localgroup users test8 /delete        #从普通用户组 users 中删除用户 test8

#net user test8        #可以看到用户 test8 没有 users 组了

image.png


28)  P28 5-3 主机联通性检测命令ping

# ping /?

image.png

# ping www.baidu.com

# ping 127.0.0.1        #用来检测本地TCP/IP 协议栈是否正常,也就是网卡是否正常 

ping -l 111111111 192.168.0.1            #-l指定发送缓冲区的大小

image.png

#ping -l 65500 192.168.0.1            #-l 太大的话,,如果目标资源有限,就会ping的出现问题

ping of death ,,,ping到死

image.png

# ping -t www.baidu.com        #t是time的简写,表示一直ping下去


29)  P29 5-4 网络连接命令telnet

# telnet

# telnet /?

image.png

# nc -l -p 1111  # 在linux 上建一个服务,监听的端口为 1111 

image.png

#telnet 192.168.80.127 1111       #可以正常连接

image.png

image.png


30)  P30 5-5 网络路由信息命令

#tracert        #查看帮助信息

image.png

#tracert 192.168.10.1          # 到网关的跟踪路由

#tracert www.baidu.com     # 到百度的跟踪路由

31)  P31 5-6 网络适配器命令ipconfig

# ipconfig        #查看ip地址的配置信息

# ipconfig /?        #查看帮助信息      

# ipconfig /all         #获取详细的信息

#ipconfig /release        #释放ip地址

#ipconfig /renew        #重新获取ip地址


32)  P32 5-7 ARP信息命令

# arp            #查看帮助信息

image.png


# arp -a         #显示所有的ip与mac的对应关系            

arp -s 157.55.85.212   00-aa-00-62-c6-09....   #  添加静态项。-s  static 静态


33)  P33 6-1 if-else结构

下面 if 后面的主体语句,最好用小括号() 括起来

@echo off
rem 演示if-else结构 判断字符串是否为规定的字符串
set v=hello
if %v% == hello (echo ok) else ( echo no)
rem 输出到空设备当中,不会看到 "请按任意键继续..."的字样
pause>nul


下面 是不对的 1) (echo ok ) 换了一行  2) rem 没有顶格写

@echo off
rem 演示if-else结构 判断字符串是否为规定的字符串
set v=hello
if %v% == hello
(echo ok)
else
( echo no)
pause>nul rem 输出到空设备当中,不会看到 "请按任意键继续..."的字样



34)  P34 6-2 判断文件是否存在exists


@echo off
rem 程序用来判断当前1.bat是否存在
if exist C:\Users\Administrator\Desktop\vscode_test\1.bat (echo ok ) else (echo no)
pause>null


下面的else 换行了,就不对

@echo off
rem 程序用来判断当前1.bat是否存在
if exist C:\Users\Administrator\Desktop\vscode_test\1.bat (echo ok )
else (echo no)
pause>null


35)  P35 6-3 文件判断删除

注意点  有空格,小括号不能换行,else 不能换行

image.png

@echo off
rem 程序用来判断当前1.bat是否存在
if exist C:\Users\Administrator\Desktop\vscode_test\a.txt (
    echo file is find!
    del C:\Users\Administrator\Desktop\vscode_test\a.txt
) else (
        echo file is not  find!
)
pause>nul


36)  P36 7-1 循环遍历文件夹名称

for 循环遍历文件夹

/d  表示遍历文件夹,,,,遍历的结果是只显示文件夹,不显示文件  星号*表示当前 文件夹,相当于 ./* 吧,,遍历的每一个结果保存到 两个百分号%a 当中 ,,,,,,, do 表示执行循环体,,,,,echo %%a 表示执行循环体,,,,    %%后面只能跟一个字母,,,,,


@echo off
rem for test
for /d %%a in (*) do echo %%a
pause>nul


for 循环遍历文件夹 里面有 if

@echo off
rem for test
for /d %%a in (*) do if %%a==test  rmdir %%a
for /d %%a in (*) do echo %%a
pause>nul


37)  P37 7-2 遍历文件夹下的文件

/r 大约是递归recursion的缩写,,,,我这里测试的是只包含文件,不包含文件夹

当你使用 for /r [drive:]path %variable in (set) do command [command-parameters] 时,它会从指定的 [drive:]path 路径开始,查找该目录及其所有子目录下的文件和/或目录(取决于你的 (set) 集合定义),并将找到的每一个对象赋值给 %variable,然后执行 command 及其参数。

 in (*.py) 是匹配规则,,,,,表示所有的.py文件 ,,,,,若  in (*) 表示所有文件

/r 后面跟的是目录的名称


@echo off
rem for test
for /r "C:\Users\Administrator\Desktop\vscode_test"  %%v in (*.py) do echo %%v
pause>nul


下面是先遍历输出 py 文件,再进行删除

@echo off
rem for test
for /r "C:\Users\Administrator\Desktop\vscode_test"  %%v in (*.py) do echo %%v
echo delete all *.py
for /r "C:\Users\Administrator\Desktop\vscode_test"  %%v in (*.py) do del %%v
pause>nul


38)  P38 7-3 遍历数字操作

 FOR /L 可以被看作是“FOR Loop”的缩写,其中“L”代表“Loop”。

in 里面 第一个1是开始,第二个1是步长,第三个30是结束

@echo off
rem for test
for /L %%v in (1,1,20) do echo %%v
pause>nul


循环 执行 ping ,,,,,,,, %1.%%v 涉及到字符串相加,,  因为要传参,在命令行执行# for5 192.168.0 就可以了

@echo off
rem for test
for /L %%v in (1,1,20) do ping  %1.%%v
pause>nul



39)  P39 7-4 遍历文件内容操作

image.png

FOR /F 可以被看作是“FOR Parse”的缩写,其中“F”代表“File”或“Format”。

下面只输出 5.bat 的 每一行的第一个单词,为什么 见  /node-admin/20178


@echo off
for /f %%v in (5.bat) do  echo %%v
pause>nul


40)  P40 8-1 目录重复新建代码分析

goto 跳转的意思,,,,,,:loop, 冒号后面可以跟任意的单词,不一定是loop

@echo off
rem C:\Users\Administrator\Desktop\1
cd C:\Users\Administrator\Desktop\1

:loop
md Virus
cd Virus
goto loop

pause>nul
exit


41)  P41 9-1 计算机信息展示

在Windows命令行环境下,执行命令echo.(注意点号后无空格)会输出一个空行。这是因为“echo.”命令的作用是打印出紧跟在“echo”关键字后面的内容,而这里是一个点号(.),在命令行界面中,点号代表当前位置,当它被打印时,并不会显示任何可见字符,因此在输出结果中会看到一个空白行。

例如,在CMD窗口中输入并执行:

cmd
echo.

回车后,你会看到在当前行下面出现了一个新的空白行


@echo off
echo. > log.txt
echo Log File >> log.txt
echo. >> log.txt
log.txt
echo User : %username% >> log.txt
Date /t >>1og. txt
Time /t >> log.txt
echo. >> log.txt
echo Process Ran by %username% >> log.txt
echo. >> log.txt
tasklist >> log.txt
echo. >> log.txt
echo Network Activities >> log.txt
netstat -S >> log.txt
ipconfig /all >> log.txt
exit

42)  P42 9-2 交互操作介绍

@echo off

echo 1.a
echo 2.b
echo 3.c
echo 4.d
:first
echo Enter your option:
set /p opt=
if %opt%==1 goto one
if %opt%==2 goto two
if %opt%==3 goto three
if %opt%==4 goto four
echo Invalid option
goto first

:one
echo your choice one
pause>nul
exit

:two
echo your choice two
pause>nul
exit

:three
echo your choice three
pause>nul
exit

:four
echo your choice four
pause>nul
exit



@echo off

echo 1.show ip address
echo 2.show network link
echo 3.show direcotory

:main
echo Enter your option:
set /p opt=
if %opt%==1 goto one
if %opt%==2 goto two
if %opt%==3 goto three
echo Invalid option
goto main

:one
ipconfig /all
pause>nul
exit

:two
netstat -an
pause>nul
exit

:three
dir
pause>nul
exit


43)  P43 9-3 计划执行操作

3-1.bat

@echo off
ren Automate Running
at 11:04 AM /every:SU,M,TU,W,TH,F,SA  "C:\1-1.bat"
exit

1-1.bat

ipconfig


44)  P44 9-4 Bat批处理脚本转Exe程序介绍

 image.png

2-1.bat

@echo off
rem c:\windows\system32\drivers\etc\hosts
echo 192.168.0.1 www.baidu.com >> c:\windows\system32\drivers\etc\hosts
echo 192.168.0.1  www.sina.com >> c:\windows\system32\drivers\etc\hosts
pause>nul






 

普通分类: