-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcpt_converter.py
More file actions
executable file
·51 lines (44 loc) · 1.87 KB
/
cpt_converter.py
File metadata and controls
executable file
·51 lines (44 loc) · 1.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/usr/local/sci/bin/python2.7
"""
Script to run CPT converter from command line.
"""
import argparse
from cpt_converter_module import cpt_converter
parser = argparse.ArgumentParser(description='Convert netcdf, grib or pp into'\
' CPT format. Output is a text file.')
parser.add_argument('filename', help='The full file path to the data to '\
'be converted.')
parser.add_argument('savename', help='The full file path to where the '\
'converted data is saved.')
parser.add_argument('variable', default=None, nargs='?', help='Optional. '\
'Convert only the given meteorological variable.')
parser.add_argument('config_file', default=None, nargs='?', help='Optional. '\
'A .txt configuration file can be used to overwrite or '\
'add cpt tags.')
parser.add_argument('-s', action='store_true', default=False, dest='simple',
help='Optional. Use simple formatting.')
args = parser.parse_args()
filename = args.filename
savename = args.savename
if args.variable == None:
variable = None
config_file = None
else:
if args.variable[-4:] == ".txt":
config_file = args.variable
if args.config_file is not None:
# Arguments have been provided backwards.
if args.config_file[-4:] == ".txt":
raise UserWarning("Too many files given.")
else:
variable = args.config_file
else:
variable = None
else:
variable = args.variable
if args.config_file is not None:
if args.config_file[-4:] != ".txt":
raise UserWarning("Too many arguments given.")
config_file = args.config_file
savepath = cpt_converter(filename, savename, variable, config_file, args.simple)
print 'Converted data saved to: %s' % savepath