有200个文件名为File1_0.pdb,File1_60.pdb等....它看起来像:
ATOM 1 N VAL 1 8.897 -21.545 -7.276 1.00 0.00
ATOM 2 H1 VAL 1 9.692 -22.015 -6.868 1.00 0.00
ATOM 3 H2 VAL 1 9.228 -20.766 -7.827 1.00 0.00
ATOM 4 H3 VAL 1 8.289 -22.236 -7.693 1.00 0.00
TER
ATOM 5 CA VAL 1 8.124 -20.953 -6.203 1.00 0.00
ATOM 6 HA VAL 1 8.072 -19.874 -6.345 1.00 0.00
ATOM 7 CB VAL 1 6.693 -21.515 -6.176 1.00 0.00
ATOM 8 HB VAL 1 6.522 -22.024 -5.227 1.00 0.00
ATOM 9 CG1 VAL 1 5.684 -20.370 -6.330 1.00 0.00
ATOM 10 1HG1 VAL 1 5.854 -19.861 -7.279 1.00 0.00
我必须在TER之后提取部分并放入一个不同的文件......这必须在所有200个文件上完成。我做了类似sed '1,/TER/d' File1_0.pdb > 1_0.pdb
的事情。但这一次可以用于一个文件...可以一次性解决所有200个文件...输出文件命名相同只是“文件”从名称中删除...
答案 0 :(得分:3)
for i in *.pdb; do sed '1,/TER/d' $i > ${i/File/}; done
答案 1 :(得分:0)
这可能有效:
seq 0 200| xargs -i -n1 cp File1_{}.pdb 1_{}.pbd # backup files
sed -si '1,/TER/d' 1_{0..200}.pdb # edit files separately inline