diff options
Diffstat (limited to 'bin/analyze_path.py')
| -rwxr-xr-x | bin/analyze_path.py | 52 | 
1 files changed, 52 insertions, 0 deletions
diff --git a/bin/analyze_path.py b/bin/analyze_path.py new file mode 100755 index 0000000..d2acd42 --- /dev/null +++ b/bin/analyze_path.py @@ -0,0 +1,52 @@ +#!/usr/bin/env python3 +# +# Copyright (c) 2017 Weitian LI <liweitianux@live.com> +# MIT license +# +# Weitian LI +# 2017-02-06 + +""" +Extract the object name and observation ID from the directory path. + +The root directory of the object data has the format: +    <name>_oi<obsid> +""" + +import os +import argparse + +from _context import acispy +from acispy.analyze_path import get_name, get_obsid + + +def main(): +    parser = argparse.ArgumentParser( +        description="Extract object name and ObsID from data directory") +    parser.add_argument("-b", "--brief", dest="brief", +                        action="store_true", help="Be brief") +    parser.add_argument("-n", "--name", dest="name", +                        action="store_true", help="Only get object name") +    parser.add_argument("-i", "--obsid", dest="obsid", +                        action="store_true", help="Only get observation ID") +    parser.add_argument("path", nargs="?", default=os.getcwd(), +                        help="Path to the data directory " + +                        "(default: current working directory)") +    args = parser.parse_args() +    path = os.path.abspath(args.path) + +    b_get_name = False if args.obsid else True +    b_get_obsid = False if args.name else True + +    if b_get_name: +        if not args.brief: +            print("Name:", end=" ") +        print(get_name(path)) +    if b_get_obsid: +        if not args.brief: +            print("ObsID:", end=" ") +        print(get_obsid(path)) + + +if __name__ == "__main__": +    main()  | 
