我希望下面這個for-loop能夠在All_Metadata.txt中的一行中輸出這兩個搜索的結果
for %%a in (*.txt) do (
findstr /B "589" %%a
findstr /X /C: "1 1,96 " %%a
) >> All_Metadata.txt
這個For-Loop的輸出看起來像這樣:
58998545
1 1,96
代替(應該是這樣的):
58998545 1 1,96
代替(這應該是這樣的):
運行系統。Windows 10 uj5u.com熱心網友回復: 用 另一種方法是,使用
標籤: 下一篇:C 覆寫模板類中的虛擬函式
58998545 1,96
for /f回圈將兩個findstr命令的輸出捕獲到變數中,然后echo它們在一起(第二個命令不需要變數,只需要使用for變數):@echo off
setlocal ENABLEDELAYEDEXPANSION
for %%a in (*.txt) do (
設定 "b="
設定 "c="
for /f "delims=" %%b in ('findstr/B "589" "%%a"') do set "b=%%b"
for /f "delims=" %%c in ('findstr /i /X /C: "1 1,96 " "%%a"') do set "c=%%c"
echo(!b! !c!
)
set /p技巧來寫第一個findstr結果,不需要換行,只需要加上第二個findstr的結果(不需要延遲擴展):@echo off
setlocal
for %%a in (*.txt) do (
設定 "b="
for /f "delims=" %%b in ('findstr /B "589" "%%a"') do <nul set /p "=%%b "
findstr /i /X /C: "1 1,96 " "%a"
)
