激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - bat - Windows bat腳本之for循環用法詳解

Windows bat腳本之for循環用法詳解

2021-10-08 00:54午夜陽光psb bat

這篇文章主要介紹了Windows bat腳本之for循環用法詳解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

Windows bat腳本的for語句基本形態如下:

?
1
2
在cmd窗口中:for %I in (command1) do command2
在批處理文件中:for %%I in (command1) do command2

之所以要區分cmd窗口和批處理文件兩種環境,是因為在這兩種環境下,命令語句表現出來的行為雖然基本一樣,但是在細節上還是稍有不同,最明顯的一個差異就是:在cmd窗口中,for之后的形式變量I必須使用單百分號引用,即%I;而在批處理文件中,引用形式變量I必須使用雙百分號,即%%I。為了方便起見,若不是特別強調,以下的講解都以批處理文件環境為例。

我們先來看一下for語句的基本要素都有些什么:

  1. for、in和do是for語句的關鍵字,它們三個缺一不可;
  2. %%I是for語句中對形式變量的引用,即使變量l在do后的語句中沒有參與語句的執行,也是必須出現的;
  3. in之后,do之前的括號不能省略;
  4. command1表示字符串或變量,command2表示字符串、變量或命令語句;

  下面來看一個Windows bat腳本的demo(記為demo1):

?
1
2
3
@echo off
for %%I in (ABC) do echo %%I
pause

  保存為.bat文件(批處理文件)并執行,將會在彈出的批處理窗口中看到這樣的信息:

Windows bat腳本之for循環用法詳解

  對批處理文件的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),結果將大不一樣:

?
1
2
3
@echo off
for %%I in (A,B,C) do echo %%I
pause

  運行結果如下:

Windows bat腳本之for循環用法詳解

如果把 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)搜索當前目錄下有哪些文件?

?
1
2
3
@echo off
for %%i in (*.*) do echo "%%i"
pause

2)搜索當前目錄下所有的文本文件?

?
1
2
3
@echo off
for %%i in (*.txt) do echo "%%i"
pause

總結

到此這篇關于Windows bat腳本之for循環用法詳解的文章就介紹到這了,更多相關Windows bat腳本for循環用法內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/u013514928/article/details/79629937

延伸 · 閱讀

精彩推薦
  • batWindows下用bat命令行方式更改IE代理服務器設置方法

    Windows下用bat命令行方式更改IE代理服務器設置方法

    批處理(Batch),也稱為批處理腳本。顧名思義,批處理就是對某對象進行批量的處理,批處理文件的擴展名為bat,下面通過本文給大家分享Windows下用bat命令...

    大蘿卜空心的6202021-10-06
  • batbat過濾任意字符

    bat過濾任意字符

    早在寫 bat的一個小游戲猜數字的時候我就研究過這個問題 如何在bat里面實現 對輸入的任意字符進行過濾 當時使用的幾種方法如下 ...

    allyesno11802021-12-26
  • bat讓bat批處理以管理員權限運行的實現方法

    讓bat批處理以管理員權限運行的實現方法

    這篇文章主要介紹了讓bat批處理以管理員權限運行的實現方法,需要的朋友可以參考下...

    bat教程網6962021-10-08
  • batWindows批處理更改當前工作路徑的BAT

    Windows批處理更改當前工作路徑的BAT

    最近項目上需要獲取文件夾下所有文件信息,因為文件夾是在server上,所以想用批處理bat來獲取該路徑下所有文件信息,然后通過任務計劃管理去每天自動...

    腳本之家12122021-10-07
  • bat批處理重命名系列案例代碼

    批處理重命名系列案例代碼

    這篇文章主要介紹了批處理重命名系列案例代碼,需要的朋友可以參考下...

    張戈10372021-10-07
  • bat使用 windows bat 腳本命令一鍵啟動MySQL服務的方法

    使用 windows bat 腳本命令一鍵啟動MySQL服務的方法

    這篇文章主要介紹了使用 windows bat 腳本命令 一鍵啟動MySQL服務的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的...

    明金同學14752021-10-07
  • batbat實現一分鐘清除系統中所有垃圾文件

    bat實現一分鐘清除系統中所有垃圾文件

      在桌面上點鼠標右鍵,選擇新建一個“記事本”,把下面的字復制進去,點“另存為”,把文件名定為“清除系統垃圾.bat”就完成,記住后綴名一定要...

    批處理之家10592021-11-14
  • bat變量延遲詳解 call setlocal

    變量延遲詳解 call setlocal

    變量延遲在for語句中起著至關重要的作用,不只是在for語句中,在其他的復合語句中,它也在幕后默默地工作著,為了突出它的重要性,本節內容在單獨的...

    腳本之家5742021-10-08
主站蜘蛛池模板: chinese xvideos gay| 中国漂亮护士一级a毛片 | 久久嗨 | 91成人精品| 欧美一区二区黄色 | 天天夜天天操 | 激情久久一区二区 | 一区二区三区四区国产 | av免播放| 日本在线观看视频网站 | 国产精品免费观在线 | 日韩一级视频 | 中文字幕在线观看91 | 欧美精品一级 | 久久成人亚洲 | 色播一区| 日本一区视频 | av电影手机在线看 | 午夜视频福利 | 亚洲最大久久 | 第四色成人网 | 日韩欧美色综合 | 黄在线| 黄色a级片免费观看 | 久久精品无码一区二区三区 | 精精国产xxxx视频在线野外 | 欧美精品成人一区二区在线观看 | 久久精品视频网站 | 日韩视频一区二区 | 久久精品一区视频 | 久久久久久久久久性 | 在线日韩亚洲 | 男女污视频在线观看 | 亚洲欧美成aⅴ人在线观看 av免费在线播放 | 国产一国产精品一级毛片 | 91短视频在线观看 | 久久成人免费网站 | 狠狠干狠狠操 | 色综合久久久久久 | 久久最新免费视频 | 性欧美xxxx极品摘花 |