Perl: «Модификация значения только для чтения» для сценария с одной строкой, который раньше работал - PullRequest
1 голос
/ 09 ноября 2019

Я использую эту маленькую строчку, которая весьма полезна для анализа некоторых данных в формате HTML, в частности, для преобразования «специальных символов» HTML в «реальные символы»:

perl -MHTML::Entities -pe 'decode_entities(-s);' <tmp1 >tmp2

Раньше он работал простохорошо, однако теперь это говорит мне

Modification of a read-only value attempted at -e line 1, <> line 1.

Можете ли вы помочь мне выяснить, почему? Я скучаю по библиотеке?

1 Ответ

3 голосов
/ 09 ноября 2019

Вы уверены, что у вас там было -s? Попробуйте заменить его на $_:

decode_entities($_)

-s возвращает размер файла, см. -x

-s Файл имеет ненулевой размер (возвращает размер в байтах).

В то время как $_ содержит строку, считанную из ввода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...