我正在尝试使用以下脚本将 pdbqt-flexible 文件合并到一个 pdb 中:
http://prosciens.com/prosciens/oldproscienssarl/files/flexrigidpdbqt2pdb_template.sh
有问题的片段:
让我们合并文件
首先我们清理模型 PDB
grep ATOM ${FLEXPDBQT}_${MODEL}.pdb > ${FLEXPDBQT}_${MODEL}.pdb.tmp
接下来我们创建一个残基列表
cut -c 18-27 ${FLEXPDBQT}_${MODEL}.pdb.tmp > residuelistraw.tmp` cat residuelistraw.tmp | uniq > residuelist.tmp
然后我们将模型文件拆分成残差
while read r do rns= echo $r | sed 's/ //g' egrep "[ \t]$r[ \t]" ${FLEXPDBQT}_${MODEL}.pdb.tmp > $rns.pdb.tmp sed -i 's/'$FLEXPDBQT'_'$MODEL'.pdb.tmp://' $rns.pdb.tmp
目前它在 #3 步骤失败,产生以下错误:
/flexrigidpdbqt2pdb_template.sh: line 133: $ rns.pdb.tmp: ambiguous redirect
sed: -e expression # 1, character 9: unknown option for the `s' command
我尝试使用一些 sed 替换来修复错误:
rns=`echo "${r/ /}"`
echo $rns
egrep "[ \t]$r[ \t]" ${FLEXPDBQT}_${MODEL}.pdb.tmp > $rns.pdb.tmp
sed -i 's/'$FLEXPDBQT'_'$MODEL'.pdb.tmp://' $rns.pdb.tmp
但到目前为止,一切都没有改变。
我的 sed 版本是 4.4