linux - 需要oneliner在unix中第二行第N次出现定界符后插入字符

标签 linux unix awk sed

你好,我需要 oneliner 在 unix 的第 2 行第 N 次出现的定界符后插入字符;标准是这些。

  1. 找到分隔符第 n 次出现的位置。
  2. 在第 n 次出现后插入字符。
  3. 这仅在第 2 行。

注意:我在 Linux 中执行此操作。

最佳答案

:

输入文件

1 foo bar base
2 foo bar base

代码

awk 'NR==2{$2=$2"X"; print}' file
  • 你可以用-F指定分隔符
  • NR 指定我们工作的行
  • $2 是用空格分隔的第二个值(在本例中)
  • $2=$2"X"是一个串联
  • print 单独打印整行

输出

2 fooX bar base

关于linux - 需要oneliner在unix中第二行第N次出现定界符后插入字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27810667/

相关文章:

python - 如何在 Linux 上修复 Python 中的 Except 错误

c++ - 指针值 0x7c7c7c7c 的特殊含义

linux - 如果调用另一个实例,则重新运行 bash 脚本

shell - 检查当月的最后一个星期六

php - 在 python 和 php 之间共享变量

python - 测试 niceness 是否被正确应用

linux - 我如何grep段落中每个单词的第一个字符

shell - 如何在 unix 中使用 awk 列出数组值并对其进行编号

awk - 在 awk 中,如何使用字符串名称调用函数?

linux - awk 查找字符串并下划线打印