ฉันสร้างไฟล์แบตช์อย่างง่ายใน windows มันทำงานการรายงานเพื่อค้นหา URL รวมถึงข้อผิดพลาด แต่ URL ทั้งหมดสะท้อนถึงความสำเร็จเท่านั้น
คำสั่ง wget stdout ดูเหมือนว่างเปล่า ไปป์การเปลี่ยนเส้นทางไม่ทำงาน เกิดอะไรขึ้น??
@echo off
for /f "delims=" %%i in (TEST.txt) do call :request %%i
set /p in=Finish!
:request
echo | set /p= %1 >> result.txt
wget.exe -T 3 --tries=2 %1 | findstr /I "error"
if %errorlevel% == 0 (
echo error >> result.txt
) else (
echo success >> result.txt
)
ปัญหาของฉันได้รับการแก้ไขแล้ว แก้ไขรหัสจากคำตอบที่ดี
@echo off
set logFile="log.txt"
set resultFile="result.txt"
for /f "delims=" %%i in (TEST.txt) do call :request %%i
set /p in=Finish!
:request
echo|set /p= %1 >> %resultFile%
wget.exe -P download -T 3 --tries=2 %1 2>&1 | tee -a %logFile% | findstr /I "error" > nul
if %errorlevel% == 0 (
echo error >> result.txt
) else (
echo success >> result.txt
)
.bat
หรือ.cmd
? - person Gerhard   schedule 12.04.2018.cmd
หรือเปล่า? - person Gerhard   schedule 12.04.2018.bat
vs.cmd
เกิดขึ้นกับคำสั่งภายในบางคำสั่งเท่านั้น - person dbenham   schedule 12.04.2018.cmd
และไม่ได้จำลองปัญหา OP ซ้ำ ดังนั้นความคิดเห็น ไม่แน่ใจว่ามันช่วยเขาได้หรือเปล่า แต่กำลังรอคำตอบอยู่ - person Gerhard   schedule 12.04.2018