我的输入文件格式如下:
2 15 1 5 1
ORTG.data 46.7 28.1 33 120
HDC3.data 169.7 89.4 47 120
../../ GFS / costa_47d 15 0 120
../../ GFS / costa_171d 15 0 120
mtinvout
数字15对应深度。我将帮助您在bash或python中创建一个允许按深度进行循环搜索的脚本。我的意思是,用16,17,18等代替15。
我有一个简单的perl行:
perl -pi -e's / 14/15 / g'mt_inv.in
但它不会作为循环运行。
任何帮助将不胜感激!
答案 0 :(得分:0)
#!/bin/bash
oldString=15
newString=16
file="/path/to/file"
while [ newString -lt 50 ]; do
sed "s/${oldString}/${newString}/g" "$file";
echo "$file"
let newString=newString+1
done
或者,如果您希望它实际创建具有替换号码的新文件
#!/bin/bash
oldString=15
newString=16
file="/path/to/file"
while [ newString -lt 50 ]; do
sed "s/${oldString}/${newString}/g" "$file" > "$file.$newString";
let newString=newString+1
done