亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用Windows批處理文件遍歷文本文件中的每一行?

如何使用Windows批處理文件遍歷文本文件中的每一行?

精慕HU 2019-07-31 18:04:50
如何使用Windows批處理文件遍歷文本文件中的每一行?我想知道如何使用Windows批處理文件遍歷文本文件中的每一行,并連續處理每行文本。
查看完整描述

3 回答

?
RISEBY

TA貢獻1856條經驗 獲得超5個贊

下面的帖子有很大幫助,但沒有按照我在問題中所說的那樣做,我需要處理整個整行。這是我發現的工作方式。

for /F "tokens=*" %%A in (myfile.txt) do [process] %%A

帶有星號(*)的標記關鍵字將拉出整行的所有文本。如果你沒有放入星號,它只會拉動該行的第一個單詞。我認為它與空間有關。

對于TechNet上的命令

我感謝所有的帖子!


如果文件路徑中有空格,則需要使用usebackq。例如。

for /F "usebackq tokens=*" %%A in ("my file.txt") do [process] %%A


查看完整回答
反對 回復 2019-07-31
?
FFIVE

TA貢獻1797條經驗 獲得超6個贊

從Windows命令行參考:

要解析文件,忽略注釋行,請鍵入:

for /F "eol=; tokens=2,3* delims=," %i in (myfile.txt) do @echo %i %j %k

此命令解析Myfile.txt中的每一行,忽略以分號開頭的行,并將第二個和第三個標記從每個行傳遞給FOR主體(標記由逗號或空格分隔)。FOR語句的主體引用%i來獲取第二個標記,%j來獲取第三個標記,%k來獲取所有剩余的標記。

如果您提供的文件名包含空格,請在文本周圍使用引號(例如,“文件名”)。要使用引號,必須使用usebackq。否則,引號將被解釋為定義要解析的文字字符串。

順便說一句,您可以在大多數Windows系統上找到命令行幫助文件:

 "C:\WINDOWS\Help\ntcmds.chm"


查看完整回答
反對 回復 2019-07-31
?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

在批處理文件中,您必須使用%%而不是%:(類型help for

for /F "tokens=1,2,3" %%i in (myfile.txt) do call :process %%i %%j %%kgoto thenextstep:processset VAR1=%1set VAR2=%2set VAR3=%3COMMANDS TO PROCESS INFORMATIONgoto :EOF

這樣做:for命令末尾的“do call:process %% i %% j %% k”將forfile命令中獲取的信息從myfile.txt傳遞給“process”'子例程'。

在批處理程序中使用for命令時,需要對變量使用雙%符號。

以下行將那些變量從for命令傳遞給進程'sub routine',并允許您處理此信息。

set VAR1=%1
 set VAR2=%2
 set VAR3=%3

如果需要更多示例,我會對這個確切的設置有一些非常高級的用法,我愿意分享。當然,根據需要添加您的EOL或Delims。


查看完整回答
反對 回復 2019-07-31
  • 3 回答
  • 0 關注
  • 2472 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號