Mercurial > repos > marcel > caddsuite_linux_x86_64
comparison CADDSuite/galaxyconfigs/countResidues.sh @ 3:ff6df146c0d5
Uploaded
author | marcel |
---|---|
date | Sun, 26 Jun 2011 13:53:57 -0400 |
parents | bac3c274238f |
children |
comparison
equal
deleted
inserted
replaced
2:bbc4a2c1d276 | 3:ff6df146c0d5 |
---|---|
1 #!/bin/bash | |
2 | |
3 IFS=$'\n'; | |
4 residue_list="" | |
5 hetsys_list="" | |
6 hoh_list="" | |
7 | |
8 for line in $(cat $1); do | |
9 if [ "${line:0:4}" = "ATOM" ];then | |
10 residue_list+="${line:23:6}\n" | |
11 else | |
12 if [ "${line:0:6}" = "HETATM" ];then | |
13 s2=`echo $line | grep HOH` | |
14 if [ "$s2" != "" ];then | |
15 hoh_list+="${line:21:8}\n" | |
16 else | |
17 s3=`echo $line | grep WAT` | |
18 if [ "$s3" != "" ];then | |
19 hoh_list+="${line:21:8}\n" | |
20 else | |
21 hetsys_list+="${line:21:8}\n" | |
22 fi | |
23 fi | |
24 fi | |
25 fi | |
26 done | |
27 | |
28 IFS=$' '; | |
29 let num_res=`echo -e "\n"$residue_list | uniq | wc -l` | |
30 let num_hoh=`echo -e "\n"$hoh_list | uniq | wc -l` | |
31 let num_hetsys=`echo -e "\n"$hetsys_list | uniq | wc -l` | |
32 | |
33 # empty line at begin and end of lists -> substract 2 | |
34 let num_res-=2 | |
35 let num_hoh-=2 | |
36 let num_hetsys-=2 | |
37 if [ $num_res -lt 0 ]; then | |
38 let num_res=0 | |
39 fi | |
40 if [ $num_hoh -lt 0 ]; then | |
41 let num_hoh=0 | |
42 fi | |
43 if [ $num_hetsys -lt 0 ]; then | |
44 let num_hetsys=0 | |
45 fi | |
46 | |
47 echo -n "$num_res " | |
48 if [ $num_res -eq 1 ]; then | |
49 echo "residue" | |
50 else | |
51 echo "residues" | |
52 fi | |
53 echo -n "$num_hoh water " | |
54 if [ $num_hoh -eq 1 ]; then | |
55 echo "molecule" | |
56 else | |
57 echo "molecules" | |
58 fi | |
59 echo -n "$num_hetsys " | |
60 if [ $num_hetsys -eq 1 ]; then | |
61 echo "heterosystem" | |
62 else | |
63 echo "heterosystems" | |
64 fi |