annotate unsorted_uniq.py @ 0:ec66f9d90ef0 draft

initial uploaded
author bgruening
date Thu, 05 Sep 2013 04:58:21 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
1 import sys
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
2 import subprocess
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
3
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
4 """
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
5 We only need that file because galaxy do not understand the -t $'\t' term.
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
6 Otherwise that would be the right XML-only solution:
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
7 sort -u
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
8 $ignore_case
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
9 $is_numeric
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
10 -t \$'\t'
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
11 #if $adv_opts.adv_opts_selector=="advanced":
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
12 -k$adv_opts.column_start,$adv_opts.column_end
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
13 #end if
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
14 -o $outfile
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
15 $input
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
16 """
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
17
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
18 if sys.argv[1].strip() != 'false':
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
19 ignore_case = sys.argv[1]
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
20 else:
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
21 ignore_case = ''
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
22
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
23 if sys.argv[2].strip() != 'false':
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
24 is_numeric = sys.argv[2]
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
25 else:
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
26 is_numeric = ''
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
27
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
28 try:
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
29 col_start = sys.argv[3]
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
30 col_end = sys.argv[4]
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
31 com = "sort -u %s %s -t ' ' -k%s,%s -o %s %s" % (is_numeric, ignore_case, col_start, col_end, sys.argv[5], sys.argv[6])
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
32 except:
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
33 # no advanced options selected
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
34 com = "sort -u %s %s -t ' ' -o %s %s" % (is_numeric, ignore_case, sys.argv[3], sys.argv[4])
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
35
ec66f9d90ef0 initial uploaded
bgruening
parents:
diff changeset
36 subprocess.call(com, shell=True)