Bash: буквенная строка для специальных символов в printf - PullRequest
0 голосов
/ 11 марта 2020

Как распечатать буквальную строку специального символа в bash? Я всегда получаю символ расширения \t. Например, приведенный ниже код:

value="0.1"
ln=5
thestring=$(printf $'%si \
    var1=$(dpkg-query -s "$1" |  grep \'Package:\' | sed \'s/^.*: //\') \
    var2=$(grep -m 1 "^$1$(printf \'%s\').*$(printf \'%s\')$value" file.txt) \
' "$ln" "\\t" "\\t")
sed "$thestring" -i somefile.txt

Для var2 символ \t расширен, я ожидал вывод, похожий на:

var2=$(grep -m 1 "^$1$(printf '\t').*$(printf '\t')$value" file.txt)

Есть идеи? Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...