linux - 在 sed 中插入制表符的正确方法是什么?

标签 linux sed

在 sed 中插入制表符的正确方法是什么?我正在使用 sed 将标题行插入到流中。我可能可以在之后使用正则表达式替换一些字符以放入制表符中,但是有更好的方法吗?

例如,假设我有:

some_command | sed '1itextTABtext'

我希望第一行看起来像这样(文本由制表符分隔):

text    text

我已经尝试将上面命令中的 TAB 替换为“\t”、“\x09”、“”(制表符本身)。我试过带双引号和不带双引号,但我无法让 sed 在文本之间插入制表符。

我正尝试在 SLES 9 中执行此操作。

最佳答案

假设 bash(也许其他 shell 也可以):

some_command | sed $'1itext\ttext'

Bash 将在 $' ' 中处理转义符,例如 \t,然后将其作为 arg 传递给 sed。

关于linux - 在 sed 中插入制表符的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8394066/

相关文章:

bash - 从html中提取某些扩展链接

regex - 如何删除冗余字段并合并结果行

linux - Overlayfs : 'Special device overlay doesn' t exist'

linux - 通过bash查找特定文件的数量

java - 如何在 Java 中使用 SHA1 对用户进行身份验证

regex - awk/sed 在两个模式之间插入行

bash - 在终端中格式化输出,删除空行并转换逗号

bash - 在 bash 中用(下划线)_ 替换空格的最简单方法

node.js - 如何将 NodeJS 和 NPM 更新到最新版本?

linux - Web 服务提供商的负载平衡器