Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在unix中查找和替换第n行和第n列值_Unix_Replace_Row_Col - Fatal编程技术网

如何在unix中查找和替换第n行和第n列值

如何在unix中查找和替换第n行和第n列值,unix,replace,row,col,Unix,Replace,Row,Col,(Unix):我有一个包含10行的文件,我的要求是找到第8行并用值“NEW”替换第3列。(文件需要更新,稍后当我查看文件时,它应该有新值)尝试下面的sed命令 sed -i '2s/^\(\([^ \t]\+[ \t]\)\{2\}\)[^ \t]\+/\1New/g' a.txt 在本例中,第一个数字2是要替换的行 然后在正则表达式中,在大括号({})内,在该列之后必须替换单词。例如,您必须替换第3列,然后在该位置给出2。能否上载文件内容以及用于实现此目的的源代码。这样我们可以更好地帮助您。

(Unix):我有一个包含10行的文件,我的要求是找到第8行并用值“NEW”替换第3列。(文件需要更新,稍后当我查看文件时,它应该有新值)

尝试下面的sed命令

sed -i '2s/^\(\([^ \t]\+[ \t]\)\{2\}\)[^ \t]\+/\1New/g' a.txt
在本例中,第一个数字2是要替换的行


然后在正则表达式中,在大括号({})内,在该列之后必须替换单词。例如,您必须替换第3列,然后在该位置给出2。

能否上载文件内容以及用于实现此目的的源代码。这样我们可以更好地帮助您。您尝试过什么吗?awk'$1~/hi$/{$3=“me”}1”testfile4我尝试过这个,但它只打印,不会在文件中更新。文件中只包含“This is test file”一行,如果我想用“New”代替“test”,但使用列和行编号。@vishal:请查看我的答案。