wget выводит 3-байтовые кавычки

Я выполнил wget -b . Из журнала я пытался получить список файлов, успешно загруженных, и для этого я выполнил grep save wget-log | awk -F '"' '{print $ 2}' , но это не сработало. Дальнейшее расследование привело меня к выводу, что имя файла заключено в трехбайтовые двойные кавычки слева и справа (0xE2 0x80 0x9D) вместо обычных двойных кавычек (0x22).

Это нормальное поведение wget или это какая-то переменная окружения на моем конце, что-то в этом роде? Могу ли я каким-то образом заставить wget использовать обычные кавычки или использовать только стандартные байты ASCII в журнале? Я знаю другие способы обойти это, например, заменив байты на sed. Меня это очень заинтриговало: я провел несколько минут в Google в поисках каких-либо комментариев по этому поводу и ничего не нашел, как будто никто этого раньше не замечал.

0
06.04.2017, 21:05
1 ответ

Похоже, это специально для локалей Unicode. Об этом есть комментарий в списке рассылки wget. Файлы языкового перевода также содержат переводы цитат, поэтому вы получаете «правильные» цитаты в соответствии с используемым языком.

Вы можете заставить его использовать обычные кавычки, используя языковой стандарт, отличный от Unicode.

LC_ALL=C wget ...

или

LC_CTYPE=C wget ...
1
28.01.2020, 02:46

Теги

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