我对 bash 脚本比较陌生,因为我需要在超级计算机上管理我的模拟。我目前坚持编写脚本来更改我的 pbs 文件中的特定行。
我的问题有两个阶段。首先,我需要替换文本文件(另一个脚本)中的多行,并覆盖该文件以供以后使用。粗略的想法是:
将第 27、28 和 29 行替换
'filename005'
为'text1=000'
,'text2=005'
和'text3=010'
接下来,我想对一组带有编号后缀的文本文件递归地执行此操作,并且编号会影响替换的文本。
到目前为止,我的代码是:
#!/bin/bash
for ((i = 1; i < 10; i++))
do
let NUM=i*5
let OLD=NUM-5
let NOW=NUM
let NEW=NUM+5
let FILE=$(printf "filename%03g" $NUM)
sed "27 c\text1=$OLD" $FILE
sed "28 c\text2=$NOW" $FILE
sed "29 c\text3=$NEW" $FILE
done
我知道我的代码的最后 4 行有一些错误,我仍在研究正确的实现方式sed
。感谢任何提示!
谢谢!CS