Я пытаюсь написать сценарий bash для преобразования всех специальных символов внутри файла (é, ü, ã и т. д.) в латексный формат (\ 'e, \ "u, \ ~ a и т. д.). Обычно, этот материал очень прост в работе с sed, но у меня возникают проблемы с получением sed для распознавания специальных символов. Как я могу сообщить команде прочитать файл с использованием iso или кодировки UTF-8?
Если это невозможно, есть ли способ заставить sed понять специальные символы?
Это может быть так же просто, как
iconv --from-code $enc input-file |
sed 's/é/\\'\''e/;s/ü/\\"e/;s/ã/\\~a/' |
iconv -to-code $enc >converted-input-file
, где переменная enc содержит кодировку входного файла, одну из строк, полученных из iconv -l.
Это может быть так же просто, как
iconv --from-code $enc input-file |
sed 's/é/\\'\''e/;s/ü/\\"e/;s/ã/\\~a/' |
iconv -to-code $enc >converted-input-file
, где переменная enc содержит кодировку входного файла, одну из строк, полученных из iconv -l.
Это может быть так же просто, как
iconv --from-code $enc input-file |
sed 's/é/\\'\''e/;s/ü/\\"e/;s/ã/\\~a/' |
iconv -to-code $enc >converted-input-file
, где переменная enc содержит кодировку входного файла, одну из строк, полученных из iconv -l.
Это может быть так же просто, как
iconv --from-code $enc input-file |
sed 's/é/\\'\''e/;s/ü/\\"e/;s/ã/\\~a/' |
iconv -to-code $enc >converted-input-file
, где переменная enc содержит кодировку входного файла, одну из строк, полученных из iconv -l.
Это может быть так же просто, как
iconv --from-code $enc input-file |
sed 's/é/\\'\''e/;s/ü/\\"e/;s/ã/\\~a/' |
iconv -to-code $enc >converted-input-file
, где переменная enc содержит кодировку входного файла, одну из строк, полученных из iconv -l.
Это может быть так же просто, как
iconv --from-code $ enc input-file | sed 's / é / \\' \ '' e /; s / ü / \\ "e /; s / ã / \\ ~ a / '| iconv -to-code $ enc & gt; convert-input-file
, где переменная enc
содержит кодировку входного файла, одну из строк, полученных из iconv -l
.
Это может быть так же просто, как
iconv --from-code $ enc input-file | sed 's / é / \\' \ '' e /; s / ü / \\ "e /; s / ã / \\ ~ a / '| iconv -to-code $ enc & gt; convert-input-file
, где переменная enc
содержит кодировку входного файла, одну из строк, полученных из iconv -l
.
Это может быть так же просто, как
iconv --from-code $ enc input-file | sed 's / é / \\' \ '' e /; s / ü / \\ "e /; s / ã / \\ ~ a / '| iconv -to-code $ enc & gt; convert-input-file
, где переменная enc
содержит кодировку входного файла, одну из строк, полученных из iconv -l
.
Это может быть так же просто, как
iconv --from-code $ enc input-file | sed 's / é / \\' \ '' e /; s / ü / \\ "e /; s / ã / \\ ~ a / '| iconv -to-code $ enc & gt; convert-input-file
, где переменная enc
содержит кодировку входного файла, одну из строк, полученных из iconv -l
.