string-escape - экранирование специальных символов
Синопсис
string escape [-n | --no-quoted] [--style=] [STRING ...] string unescape [--style=] [STRING ...]
Описание
string escape экранирует каждую СТРОКУ одним из трёх способов. Первый - --style=script. Это значение по умолчанию. Оно изменяет строку так, чтобы её можно было передать обратно eval для получения исходного аргумента. По умолчанию все специальные символы экранируются, а кавычки используются для упрощения вывода, когда это возможно. Если заданы -n или --no-quoted, упрощающий формат с кавычками не используется. Код возврата: 0, если хотя бы одна строка была экранирована, или 1 в противном случае.
--style=var гарантирует, что строка может быть использована как имя переменной, кодируя в шестнадцатеричном формате любые не буквенно-цифровые символы. Строка сначала преобразуется в UTF-8 перед кодированием.
--style=url гарантирует, что строка может быть использована как URL, кодируя в шестнадцатеричном формате любые символы, которые не являются допустимыми в URL. Строка сначала преобразуется в UTF-8 перед кодированием.
string unescape выполняет обратное действие команды string escape. Если строка, подлежащая экранированию, отформатирована неправильно, она игнорируется. Например, выполнение string unescape --style=var (string escape --style=var $str) вернёт исходную строку. Поддержка экранирования --style=regex отсутствует.
Примеры
>_ echo \x07 | string escape \cg >_ string escape --style=var 'a1 b2'\u6161 a1_20_b2_E6_85_A1_
© 2022 fish-shell developers
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.5/cmds/string-escape.html