2013-11-24 66 views
1

我想用稍微不同的输入多次运行一个程序。输入文件是一个很长的.in文件,我只想编辑该文件特定行中的一个数字。所以最好我想编写一个Unix脚本,重复此过程数次:编写一个将编辑.in文件的某一行的Unix shell脚本


  1. 编辑的。在文件
  2. 线运行它使用文件作为输入程序
  3. 重命名从程序的输出.NC文件并保存它

我完全新的这种脚本,而我敢肯定我可以弄清楚如何做这个过程的第2步和第3步,我不知道如何做第二步。是否可以使用脚本来自动编辑.in文件,我该怎么做?

+2

尝试使用'sed'命令进行内联编辑 – JoeC

+1

,因为@JoeC表示使用与该行匹配的正则表达式,sed将是您最好的选择。文件中是否有其他类似的行? – Goran

+1

如果您确定行号始终相同,您可以使用'head'和'tail'命令将文件拆分为一半,然后将它们连接在一起,并使用'cat'将第一部分,新行,然后是下半场。 – Goran

回答

6

这里是一个应该让你开始一个例子:

$ echo cat says meow >say.txt 
$ sed -i s/meow/meowwwwwww/ say.txt 
$ cat say.txt 
cat says meowwwwwww 

让我知道如果你需要更多的帮助。