Какие символы должны быть сбежете при использовании команды printf?

Если вам нужно это для сборки, то вам также нужны заголовки #include. Эти и pkgconfig файлы не входят в обычные пакеты, потому что они не служат никакой цели за пределами компиляции. Вместо этого они включены в отдельные пакеты -dev, которые вы можете установить, если хотите собрать что-то, что должно быть скомпилировано с какой-либо библиотекой.

Мне кажется (в Debian), что нужный вам пакет - это libibus-1.0-dev.

3
16.01.2019, 06:19
1 ответ

Из инструкции:

$ man printf
...
   printf FORMAT [ARGUMENT]...
...
   FORMAT controls the output as in C printf.  Interpreted sequences are:

Здесь перечислены несколько интерпретируемых последовательностей. Ниже приведены те, где сам персонаж должен быть экранирован.

   \"     double quote
   \\     backslash
   %%     a single %

Я проверил эти три в bash, и они вели себя так, как ожидалось. Согласно man bash, эта реализация printfиспользует «стандартные спецификации формата printf (1 )», как указано выше, в дополнение к некоторым другим, которые здесь не имеют значения.


Однако другие оболочки, такие как zsh, реализуют printfнесколько иначе. Здесь не следует экранировать двойную кавычку.

$ printf '"'
"   
$ printf '\"'
\"
3
27.01.2020, 21:13

Теги

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