Войти

Показать полную графическую версию : [решено] Удалить ненужные строки из лог файла


hp1nt0
17-12-2016, 20:24
Здравствуйте, есть лог файл следующего вида
2016-12-17 16:47:24.958 [youtube] ITHKAu4xmNg: Downloading webpage
2016-12-17 16:47:27.833 [youtube] ITHKAu4xmNg: Downloading video info webpage
2016-12-17 16:47:29.983 [youtube] ITHKAu4xmNg: Extracting video information
2016-12-17 16:47:34.051 WARNING: video doesn't have subtitles
2016-12-17 16:47:34.070 [youtube] ITHKAu4xmNg: Downloading MPD manifest
2016-12-17 16:47:35.198 [info] Writing video description to: Ultimate Fails Compilation 2016 - Part 1.description
2016-12-17 16:47:35.957 WARNING: Requested formats are incompatible for merge and will be merged into mkv.
2016-12-17 16:47:38.145 [download] Destination: Ultimate Fails Compilation 2016 - Part 1.f136.mp4
2016-12-17 16:47:38.174
[download] 0.0% of 206.81MiB at 961.58B/s ETA 62:38:33
[download] 0.0% of 206.81MiB at 1.82KiB/s ETA 32:19:49
[download] 0.0% of 206.81MiB at 3.58KiB/s ETA 16:26:00
[download] 0.0% of 206.81MiB at 7.10KiB/s ETA 08:17:14
[download] 0.0% of 206.81MiB at 14.12KiB/s ETA 04:09:51
[download] 0.0% of 206.81MiB at 17.77KiB/s ETA 03:18:33
[download] 0.0% of 206.81MiB at 26.73KiB/s ETA 02:12:00
[download] 0.0% of 206.81MiB at 38.08KiB/s ETA 01:32:38
[download] 0.1% of 206.81MiB at 34.56KiB/s ETA 01:42:01

я хотел бы убрать строки начинающиеся с [download]
лог из программы youtube-dl
пишу через https://ritchielawrence.github.io/mtee/
коммандой следующего вида
main.bat 2>&1 | mtee/d/t/+ log.txt
временные штампы (time stamp) добавляет mtee
я хочу удалять или если можно вообще не писать в файл строки начинающиеся с
[download] 0.0% of 206.81MiB at 26.73KiB/s ETA 02:12:00
я погуглил но пока решения не нашёл. буду рад помощи.
заранее спасибо.

Iska
17-12-2016, 20:34
hp1nt0, пробовали просто добавлять к «youtube-dl.exe» параметр «--no-progress»?

hp1nt0
17-12-2016, 21:02
Iska
В таком случае не отображается скорость и прогресс скачивания.
А с моим интернетом это важно.

hp1nt0
17-12-2016, 21:48
нагуглил такой способ:
type file.txt | findstr /v ERROR | findstr /v REFERENCE
или
findstr /v "ERROR REFERENCE" infile.txt > outfile.txt
проблема в том что есть строки где встречается [download] и они нужны.
правда в ненужных есть три пробела после [download].
я попробовал так:
main.bat 2>&1 | findstr /v "[download] " | mtee/d/t/+ events.log
и так:
main.bat 2>&1 | findstr /v "[download] "
ничего вообще не пишет ни в лог ни в консоль.
может кодировка?

Iska
17-12-2016, 22:04
Попробуйте что-нибудь наподобие такого:
"youtube-dl.exe" --console-title <Url> 2>&1 | find.exe /i /v "[download]" | mtee.exe /d /t /+ log.txt
% загруженного будете видеть не на консоли, а в строке заголовка окна консоли.

правда в ненужных есть три пробела после [download]. »
От одного до трёх.

megaloman
17-12-2016, 22:16
@Echo Off
Set "Log=Z:\Box_In\txt.log"

Move /Y "%Log%" "%Log%.bak" >nul

FOR /F "usebackq delims=" %%s IN (`more "%Log%.bak"`) DO Call :OutLog "%%s"
If Exist "%Log%" Del "%Log%.bak"
GoTo :Eof

:OutLog
Set "String=%1"
If /I not "%String:~1,10%"=="[download]" >>"%Log%" Echo %~1

hp1nt0
17-12-2016, 23:02
Iska, вам нет равных в поиске решения любых проблем!
я бы навряд ли додумался до настолько элегантного решения.
я уже думал запускать батник сервисом а процесс работы смотреть просмоторщиком логов.
поскольку я из батника вызываю батник то --console-title я вставил туда.
результирующая команда выгядит так:
main.bat 2>&1 | find.exe /i /v "[download] " | mtee/d/t/+ log.log
большое спасибо!

megaloman, спасибо и вам. сейчас я почищу от мусора свои залежы.

Iska
17-12-2016, 23:14
поскольку я из батника вызываю батник то --console-title я вставил туда. »
Ну да. Я ж не знаю, что у нея внутре у Вас в пакетном файле детально, но что какой-то вызов youtube-dl.exe там есть — это несомненно.




© OSzone.net 2001-2012