用另一个字符串替换表中的字符串

Nad*_*led 1 bash sed


我正在尝试使用该sed命令解决问题.
我有一个包含数据的表(少量行和列).
我希望能够i,j用新字符串替换现场的字符串.
举个例子:

word1 word2 word3 word4
word5 word6 word7 word8
word9 word10 word11 word12
Run Code Online (Sandbox Code Playgroud)

随着输入1,1abc应该返回

word1 word2 word3 word4
word5 abc word7 word8
word9 word10 word11 word12
Run Code Online (Sandbox Code Playgroud)

如果可能,将其打印到新文件.
谢谢

anu*_*ava 5

使用awk可能更容易:

awk -v c=1 -v r=1 -v w='abc' 'NR==r+1{$(c+1)=w}1' file
word1 word2 word3 word4
word5 abc word7 word8
word9 word10 word11 word12
Run Code Online (Sandbox Code Playgroud)

  • 这也是我的建议.`sed`是一个流编辑器,而不是一个记录编辑器. (3认同)
  • 所以基本上你想要有人为你做功课.你不会那样学习任何东西.你为什么不首先尝试一些事情,然后问你何时被卡住? (2认同)