批處理入門教程-for語法(二)
for /f參數(shù)的用法批處理,也稱為批處理腳本,英文譯為BATCH,批處理文件后綴BAT就取的前三個(gè)字母。它的構(gòu)成沒有固定格式,只要遵守以下這條就ok了:每一行可視為一個(gè)命令,每個(gè)命令里可以含多條子命
for /f參數(shù)的用法
批處理,也稱為批處理腳本,英文譯為BATCH,批處理文件后綴BAT就取的前三個(gè)字母。它的構(gòu)成沒有固定格式,只要遵守以下這條就ok了:每一行可視為一個(gè)命令,每個(gè)命令里可以含多條子命令,從第一行開始執(zhí)行,直到最后一行結(jié)束,它運(yùn)行的平臺是DOS(磁盤操作系統(tǒng));本次一起查看批處理中for語法。
for /f參數(shù)將會打開(集)里的文件,使for命令能處理文本文件的讀取和添加刪除替換等編輯性的操作,準(zhǔn)備了一個(gè)軟件日志txt文檔如下便于后面我們使用for /f參數(shù)操作直觀理解。
for /f語法格式
for /f "options" %變量 in (文件名/字符串/命令) do 命令
運(yùn)行for /f %I in (zeus.log) do echo %I得到如下結(jié)果,將前面日期截取出來了。
(%變量前缺省參數(shù)選項(xiàng)中默認(rèn)以空格為分隔)
添加skip與tokens參數(shù)進(jìn)行查看,skip1表示文本開始忽略的行數(shù),delims在這一行中用什么字符來分隔,token輸出第幾塊的數(shù)據(jù),如下:
for /f "skip1 tokens2 delims;" %I in (zeus.log) do echo %I
tokens3,2,1等號后面的數(shù)字表示依次取第幾個(gè)被分隔的字符串,賦值%變量依次往后面排,比如我們變量為%c 3,2,1依次賦值給%e、%d、%c,使用一個(gè)例子
for /f "skip1 tokens1,3 delims;" %c in (zeus.log) do echo %c %d %e如下。
eol參數(shù),忽略行忽略含有字符開頭的行,如eol2,for /f "eol2 tokens2,3,1 delims;" %c in (zeus.log) do echo %c %d %e查看運(yùn)行結(jié)果。
其他用法可以在cmd中,使用for /?來進(jìn)行查看嘗試。