bash - Bash:printf中特殊字符的文字字符串
问题描述
如何在 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)
任何想法?谢谢!
解决方案
推荐阅读
- google-docs-api - 有没有办法使用 Google Docs Api 将 headingId 添加到段落中?
- ios - 如何在 iOS 上为我的 Google Analytcs 2(App + Web)属性模拟 gtag 事件日志记录?
- python - 如何为每个具有比例值的元素列表创建成对值矩阵?
- java - 无法选择单选按钮“NoSuchElementException:没有这样的元素:无法找到元素”错误显示
- git - 看不到 master 分支的所有 git 提交
- python - 如何使用求解器运行时间打印迭代?
- angular - 如何以角度(rxjs 6)在具有不同路由的不相关组件之间同步数据
- java - 如何正确从网站获取 cookie?
- angular - 使用 ng serve 时出现 Angular8 错误:找不到模块“@angular-devkit/build-angular”
- python - 如何获取内置函数的字符串表示形式?