wget конкретная строка TEXT со стороны HTML

Возможно, что-то вроде этого:

perl -pe 's/(?<==)[-+]?[0-9]*\.?[0-9]+(!:)/sprintf("%.2f",$&)/e' log

, который перепечатывает с точностью 2 любое число с плавающей запятой, которое следует за = и не предшествует : (чтобы игнорировать поля времени ).

Если вы не хотите рассматривать целочисленные значения как плавающие точки, то несколько проще исключить поля времени, а следующее должно сделать это:

perl -pe 's/[-+]?[0-9]*\.[0-9]+/sprintf("%.2f",$&)/e' log

Регулярное выражение с плавающей запятой берется из сопоставления чисел с плавающей точкой с регулярным выражением

0
задан 5 September 2017 в 19:55

4 ответа

wget http://www.bafg.de/php/KOBLENZRHEINW.htm && grep "Letzter gemessener Wert" KOBLENZRHEINW.htm > wert.txt

следует сделать трюк, если строка всегда начинается с “Letzter gemessener Верт”. Он скачивает файл .htm, ищет строку и сохраняет Выходные данные в wert.txt. Используя только > перезаписывает любой существующий файл wert.txt, если вы хотите, чтобы добавить строку в использовать файл >> вместо.

однако, как zx485 по передачи текста на веб-сайте непосредственно к grep - это лучше, чем скачивать файл, как в моем выше решение.

1
ответ дан 18 July 2018 в 07:22

Эта команда направляет вывод wget на консоль, grep s на выбранную строку и, наконец, перенаправляет ее в файл .txt:

wget -q -O - "$@" http://www.bafg.de/php/KOBLENZRHEINW.htm | grep "Letzter gemessener Wert" > file.txt
2
ответ дан 18 July 2018 в 07:22
wget http://www.bafg.de/php/KOBLENZRHEINW.htm && grep "Letzter gemessener Wert" KOBLENZRHEINW.htm > wert.txt

должен делать трюк, если линия всегда начинается с «Letzter gemessener Wert». Он загружает файл .htm, выполняет поиск строки и сохраняет результат в wert.txt. Используя только >, вы перепишете любой существующий файл wert.txt, если вы хотите добавить строку к файлу, используя >>.

Однако способ zx485 для перевода текста веб-сайта непосредственно на grep лучше, чем загрузка файла сначала, как в моем решении выше.

1
ответ дан 24 July 2018 в 18:47

Эта команда направляет вывод wget на консоль, grep s на выбранную строку и, наконец, перенаправляет ее в файл .txt:

wget -q -O - "$@" http://www.bafg.de/php/KOBLENZRHEINW.htm | grep "Letzter gemessener Wert" > file.txt
2
ответ дан 24 July 2018 в 18:47
  • 1
    Ваш ответ лучше, чем у меня, но поскольку OP запросил сохранить строку в файле .txt, перенаправить вывод grep с > file.txt или тому подобное. – dessert 5 September 2017 в 20:44
  • 2
    @dessert: Спасибо. Я добавил это к ответу. – zx485 5 September 2017 в 21:17

Другие вопросы по тегам:

Похожие вопросы: