我想讀在批處理文件中的文本文件的全部內容的文本文件的全部內容。 我發現這一點:如何讀取批次
FOR/F 「delims =」 %% X IN(file.txt的)不設置內容= %% X
但 「內容」 變量只是有最後的行,我想將整個文件讀入一個變量。
我想讀在批處理文件中的文本文件的全部內容的文本文件的全部內容。 我發現這一點:如何讀取批次
FOR/F 「delims =」 %% X IN(file.txt的)不設置內容= %% X
但 「內容」 變量只是有最後的行,我想將整個文件讀入一個變量。
從您的評論
有沒有什麼辦法,包括在內容上線!
我假設你想在你的content變量中換行,這可以用一個額外的變量來完成。
@echo off
setlocal EnableDelayedExpansion
set LF=^
rem ** The two empty lines are necessary
set "content="
for /f "delims=" %%x in (file.txt) do (
set "content=!content!%%x!LF!"
)
echo(!content!
endlocal
我不知道你是在「內容」變量尋找的格式,但是這個代碼應該做的伎倆(代碼簡單地設置內容爲空,然後通過file.txt的和複印件各行循環行成內容使用延遲擴展):
@echo off
setlocal enabledelayedexpansion
set content=
for /f "delims=" %%x in (file.txt) do (set content=!content! %%x)
echo !content!
endlocal
在Windows的現代仿製品,你也可以這樣做:
powershell -Command cat "<file name>"
唯一的擡頭是:
powershell YourScriptFile.ps1
,除非你修改系統的安全設置默認情況下無法執行......正如我在試圖建立「貓」命令時所學到的那樣。也就是說,對於這樣的一兩個襯裏,爲什麼在大多數現代系統上可以利用這個優勢來擊敗你的頭。
此,如果該文件是小於8191個字節,只能工作,因爲變量侷限於此。 – jeb