Как я могу легко преобразовать HTML специальные объекты из стандартного входного потока в Linux?

поле Linux на достойных аппаратных средствах может обработать трафик немногих сотен Мбит/с без проблем.

для пограничного межсетевого протокола в соответствии с Linux нет большого выбора - quagga.

9
задан 22 October 2012 в 05:21
6 ответов

PHP хорошо подходит для этого. В этом примере требуется PHP 5:

cat file.html | php -R 'echo html_entity_decode($argn);'
9
ответ дан 2 December 2019 в 22:19

Perl (как всегда) ваш друг. Думаю, это подойдет:

perl -n -mHTML::Entities -e ' ; print HTML::Entities::decode_entities($_) ;'

Например:

echo '"test" & test $test ! test @ # $ % ^ & *' |perl -n -mHTML::Entities -e ' ; print HTML::Entities::decode_entities($_) ;'

С выводом:

someguy@somehost ~]$ echo '"test" & test $test ! test @ # $ % ^ & *' |perl -n -mHTML::Entities -e ' ; print HTML::Entities::decode_entities($_) ;'
"test" & test $test ! test @ # $ % ^ & *
13
ответ дан 2 December 2019 в 22:19

Во-первых, visudo (8) - это всего лишь рекомендуемый редактор для файла / etc / sudoers . Ничего больше. Это так, потому что он выполняет некоторую проверку синтаксиса и парсинг основных правил, чтобы предупредить вас, если вы собираетесь выстрелить себе в ногу. Это не идеально, но оказалось очень полезным.

Тем не менее, следующие строки показывают, как предоставить разрешения на выполнение для нечитаемого файла без использования уловок SETUID. Я использовал root и / root / bin / , но это верно для любого другого сценария, где пользователь, которому предоставлены разрешения выполнение , не имеет ] чтение доступ к файлу.

Символ # , как обычно, означает, что команды выполняются root ,

0
ответ дан 2 December 2019 в 22:19

recode кажется доступным в репозиториях пакетов по умолчанию основных дистрибутивов GNU / Linux. Например.для декодирования HTML-объектов в UTF-8:

…|recode html..utf8
5
ответ дан 2 December 2019 в 22:19

С Python 3:

python3 -c 'import html,sys; print(html.unescape(sys.stdin.read()), end="")' < file.html
2
ответ дан 2 December 2019 в 22:19

Я использую этот скрипт. Сохраните его как html2utf.py и используйте как echo $some_html | html2utf.py.

#!/usr/bin/env python3
"""
An alternative for `perl -Mopen=locale -MHTML::Entities -pe '$_ = decode_entities($_)'` (which you can use by `cpanm HTML::Entities`) and `recode html..`.
"""

import fileinput
import html

for line in fileinput.input():
    print(html.unescape(line.rstrip('\n')))
0
ответ дан 1 August 2020 в 22:25

Теги

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