bash - 使用 sed/awk 插入文本中线

标签 bash sed awk grep

我想在两个数字之间插入一个字符:foo bar 12 34 变成foo bar 12/34

所以我想要像 sed 这样的东西来匹配两个数字之间的空格并用斜杠替换它,但我不确定该怎么做。

到目前为止,我有 sed -e 's/[1-9][0-9] [1-9][0-9]/\//',但我知道用斜杠替换数字 空格。我需要在两个数字之间的行中找到空格,但只替换空格。也许我需要 grep 来找到它,但我仍然需要整行打印到最后。

有什么想法吗?

最佳答案

awk 的简单操作:

echo 'foo bar 12 34' | awk '{print $1,$2,$3"/"$4}'

确定要用分隔符分隔的列,并将分隔符放在它们之间。

如果一行中有不同数量的字段,请使用循环确定要与下一个字段连接的字段。

关于bash - 使用 sed/awk 插入文本中线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17396519/

相关文章:

python - 在 bash 中生成多个 python 脚本

bash - 如何比较两个txt文件的部分行?

regex - sed:删除第一个字母数字字符之前的所有字符

unix ksh 如何打印 $1 和 $2 的前 n 个字符

awk - 如何在awk中剪切

arrays - 使用掩码获取唯一数组值

bash - bash 中的 SED 用于接收参数

bash - 从 csv 文件中删除一行 bash, sed, bash

linux - 不考虑缺失值的多个文件的平均值

linux - 使用 sed 命令替换文件内容