diff options
| author | Aaron LI <aly@aaronly.me> | 2017-07-02 20:52:37 +0800 | 
|---|---|---|
| committer | Aaron LI <aly@aaronly.me> | 2017-07-02 20:52:37 +0800 | 
| commit | ece915ca68581580ed0795dd88fa6dc5691cd048 (patch) | |
| tree | 6d4f78502a8d9dc45622bcac66ef216e3c349d06 /astro | |
| parent | aeb2d49a746b5eb1bf9e4fc1eba2d9860838ba36 (diff) | |
| download | atoolbox-ece915ca68581580ed0795dd88fa6dc5691cd048.tar.bz2 | |
astro/casa-script: hack to make it work as shebang of CASA scripts
Diffstat (limited to 'astro')
| -rwxr-xr-x | astro/casa/casa-script | 26 | 
1 files changed, 24 insertions, 2 deletions
| diff --git a/astro/casa/casa-script b/astro/casa/casa-script index a1e8e6b..ecee175 100755 --- a/astro/casa/casa-script +++ b/astro/casa/casa-script @@ -22,11 +22,33 @@  # https://github.com/pkgw/pwpy - intfbin/casa-script  # -if [ $# -eq 0 ] || [ "x$1" == "x-h" ]; then -    echo "usage: $(basename $0) <script.py> [ script args ... ]" +PROG="${0##*/}" + +if [ $# -eq 0 ] || [ "x$1" = "x-h" ]; then +    echo "usage: ${PROG} <script.py> [ script.py args ... ]"      exit 1  fi  script="$1" +script2="$2"  shift + +# HACK: make this wrapper work as the *shebang* of CASA scripts +if [ ! -f "${script}" ] && [ -f "${script2}" ]; then +    # This wrapper is called from the *shebang* of the CASA script +    # NOTE: +    # By self-testing, when this wrapper called from the *shebang*, +    # `$0` is the absolute path to this wrapper, but `$1` is the +    # first 3 lines (excluding the shebang line) of the calling CASA +    # script, whose path is stored as `$2`. +    echo "DEBUG: ${PROG} is called from shebang" >&2 +    script="${script2}" +    shift +fi + +echo "================= casa-script wrapper ================" +echo "script: ${script}" +echo "arguments: $@" +echo "======================================================" +  casa --log2term --nologfile --nogui -c ${script} -- "$@" | 
