【发布时间】:2012-03-06 16:06:27
【问题描述】:
我有一个非常具体的问题,我想搜索包含第一个单词的行 *Contro_Contact 在 file1 中,当找到它时,我想用 anthor file2 中的另一行替换 2 行之后的行,以便从文件 2 中自动更改参数
*CONTROL_CONTACT
$# slsfac rwpnal islchk shlthk penopt thkchg orien enmass
0.100000 0.000 2 1 4 0 1 0
输出可能是
*CONTROL_CONTACT
$# slsfac rwpnal islchk shlthk penopt thkchg orien enmass
0.2340000 0.000 2 1 4 0 1 0
我从另一个文件中得到的更改行,所以这不是问题。
我将等待专家的建议。
【问题讨论】:
-
哪种语言/操作系统?你都尝试了些什么?这不是“给我codez”网站:)
-
我尝试过使用 Linux .. 但我是新手,我可以使用 MATLAB 来完成,但我需要使用 linux,因为我是新手,所以我正在尝试从技巧中学习。什么时候会告诉我,一旦我注意到它并根据需要进行更改并重新发布,如果有人想要的话:) stackoverflow.com/users/62951/antony-scott
-
如果您适当地标记您的问题,它将帮助人们帮助您。如果您使用的是 linux,听起来您可以使用 grep 之类的东西。我不是 linux/unix 专家,所以不能给你更多。我知道有现有的工具可以做这种事情。
-
您可以尝试使用 sed 或 perl 以及匹配第一行(包括 \n)的正则表达式,然后替换下一行中的内容
-
感谢 scott 和 roex,我曾尝试使用 Awk ,并且我正在尝试使用 Awk ,如果 Ihttp://stackoverflow.com/users/446140/reox 成功,我也会发布解决方案问候,stackoverflow.com/users/62951/antony-scotthestackoverflow.com/users/62951/antony-scott