我有很多文件,从file0
到file3100
。我想在每个文件中为一行添加###
。
该行
Generated by trjconv : PTEG1 t= 8100.00000
应该是
###Generated by trjconv : PTEG1 t= 8100.00000
每个文件中的时间(t
)不同。如何在每个文件中添加###
一次,并且每个文件中的时间(t
)仍然与添加前相同?
以下是我的尝试:
#!/bin/bash
# loop all inp files in the current dir
for frameFile in frame*.inp; do
sed -i -r -e 's/Generated by trjconv : pteg-1 t=.+/###Generated by trjconv : pteg-1 t=.+/g' ${frameFile}
fi
done
答案 0 :(得分:0)
一个简单的perl one liner完成这项工作:
perl -pi -e 's/Generated by trjconv : PTEG1 t=/###$&/' file*
这将在名称以Generated by trjconv : PTEG1 t=
开头的所有文件中将###Generated by trjconv : PTEG1 t=
替换为file