03 批處理

02 批處理

在批處理中,我們可以對(duì)命令進(jìn)行批量操作,并且可以引入一些邏輯處理的環(huán)節(jié)。在windows下,批處理腳本的后綴一般是*.bat。一行(回車(chē))就是一條命令。

一、常用命令

  • ::或者rem: 注釋

  • echo:表示輸出,可以輸出常量或者變量

  • @echo off:是用來(lái)關(guān)閉命令本身的輸出,即不顯示所執(zhí)行的命令語(yǔ)句

    • 加上@echo off
    1.png
  • 不加@echo off
2.png
  • 變量:一般的變量都是通過(guò)set命令來(lái)實(shí)現(xiàn)定義,set 變量名=變量值。對(duì)于變量的使用:在windows下一般是通過(guò)%變量名%來(lái)進(jìn)行調(diào)用。

    3.png
  • 變量的調(diào)用:除了可以直接調(diào)用變量,也可以對(duì)變量的值進(jìn)行選擇性調(diào)用,格式為:%變量名:~M,N%,表示從變量的第M個(gè)字節(jié)開(kāi)始讀取,讀取N個(gè)字符長(zhǎng)度的值。如果N省略,則表示M之后

    4.png
  • 常用參數(shù)

    • /a: 表示變量可以進(jìn)行數(shù)學(xué)計(jì)算。
5.png
  • /p: 表示從用戶(hù)輸入中接收變量的值。
6.png
  • 重定向:

    • ">":標(biāo)準(zhǔn)正確輸出重定向,默認(rèn)的輸出是控制臺(tái),通過(guò)該操作符可以改變輸出對(duì)象

      • 拿一個(gè)文件夾里面的所有文件的文件名
      8.png
  • 錯(cuò)誤的信息并不會(huì)存進(jìn)去

    9.png
  • 2> :標(biāo)準(zhǔn)錯(cuò)誤重定向,默認(rèn)的輸出是控制臺(tái)

    • 存入錯(cuò)誤的信息

      10.png
  • <: 標(biāo)準(zhǔn)輸入重定向,一般來(lái)說(shuō)是通過(guò)該操作將文件作為用戶(hù)輸入使用

    7.png
  • 正確和錯(cuò)誤的輸入到同一個(gè)文件中

    dir /B /A:-D a >log.txt 2>&1
    或者
    dir /B /A:-D a 2>log.txt >&2
    

二、練習(xí)

注意:寫(xiě)批量腳本的時(shí)候,嘗試在命令行執(zhí)行,先單條執(zhí)行沒(méi)問(wèn)題再寫(xiě)進(jìn)腳本中

1、查詢(xún)本機(jī)IP并進(jìn)行ping

  • 先查詢(xún)出IP地址
11.png
  • 篩選,并輸出到ip.txt中

    ipconfig|findstr /i "ipv4" > ip.txt
    
  • ip.txt賦值給一個(gè)變量,并輸出ip地址

    13.png
  • ping
14.png
  • 整合到腳本
15.png

2、能夠ping指定第N個(gè)IP地址。

@echo off
rem 獲取ip
ipconfig|findstr /i "ipv4" > ip.txt

rem 獲取多行并賦值
(set /p line1=&set /p line2=&set /p line3= ) < ip.txt
rem echo %line1:~37%

rem 輸入N
set /p n="請(qǐng)輸入你要ping第幾個(gè)IP:"

rem 判斷
if %n% equ 1 (ping %line1:~39%) 
if %n% equ 2 (ping %line2:~39%)
if %n% equ 3 (ping %line3:~39%)

rem 按任意鍵繼續(xù)
pause

3、編寫(xiě)一個(gè)bat腳本,用來(lái)實(shí)現(xiàn)簡(jiǎn)單的加法計(jì)算,讓用戶(hù)輸入兩個(gè)數(shù)字,得到和

@echo off

set /p a="請(qǐng)輸入a:"

set /p b="請(qǐng)輸入b:"

set /a c = %a%+%b%

echo  "a+b的結(jié)果是:%c%"

pause

總結(jié):

能夠掌握批處理的基本概念,當(dāng)別人給你一個(gè)任務(wù),你能想到用批處理來(lái)解決,這個(gè)思想足夠,命令不重要,重要是能有這個(gè)想法和思路。第二個(gè),能夠閱讀理解所接觸到的批處理腳本。能知道大概的意思,那就很棒

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 命令簡(jiǎn)介 echo 命令 打開(kāi)回顯或關(guān)閉請(qǐng)求回顯功能,或顯示消息。如果沒(méi)有任何參數(shù),echo命令將顯示當(dāng)前回顯設(shè)置...
    Elevenstrings閱讀 1,121評(píng)論 0 2
  • 批處理文件(batch file)包含一系列 DOS命令,通常用于自動(dòng)執(zhí)行重復(fù)性任務(wù)。用戶(hù)只需雙擊批處理文件便可執(zhí)...
    紀(jì)同學(xué)說(shuō)閱讀 515評(píng)論 0 1
  • dos 批處理 一:windows的命令行模式(win+R)在里面寫(xiě)CMD就可以進(jìn)入windows的命令行模式了二...
    chenchao981閱讀 844評(píng)論 0 6
  • 一、基礎(chǔ)語(yǔ)法: 1.批處理文件是一個(gè)“.bat”結(jié)尾的文本文件,這個(gè)文件的每一行都是一條DOS命令??梢允褂萌魏挝?..
    蔣_Sir閱讀 9,388評(píng)論 1 4
  • 夜鶯2517閱讀 128,155評(píng)論 1 9

友情鏈接更多精彩內(nèi)容