tgranular-status.sh - Granular.jl - Julia package for granular dynamics simulation
(HTM) git clone git://src.adamsgaard.dk/Granular.jl
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
tgranular-status.sh (2055B)
---
1 #!/usr/bin/env bash
2
3 version=1.0
4 loopinterval=10
5
6 function show_help {
7 echo "usage: ${0##*/} [OPTIONS] [COMMAND]"
8 echo "Status script which traverses the subdirectories of the current "
9 echo "directory for simulations."
10 echo
11 echo "The following COMMANDS are supported:"
12 echo " loop continuously show status of simulations"
13 echo " render continuously show status of simulations"
14 echo
15 echo "OPTIONS are one or more of the following:"
16 echo " -h, --help show this message"
17 echo " -v, --version show version and license information"
18 echo " -n, --interval SECONDS sleep duration between status loops"
19 echo " -- do not consider any following args as options"
20 }
21
22 function show_version {
23 echo "${0##*/} version $version"
24 echo "Licensed under the GNU Public License, v3+"
25 echo "written by Anders Damsgaard, anders@adamsgaard.dk"
26 echo "https://gitlab.com/admesg/dotfiles"
27 }
28
29 function die {
30 printf '%s\n' "$1" >&2
31 exit 1
32 }
33
34 while :; do
35 case "$1" in
36 -h|-\?|--help)
37 show_help
38 exit 0
39 ;;
40 -v|--version)
41 show_version
42 exit 0
43 ;;
44 -n|--interval)
45 loopinterval="$2"
46 shift
47 ;;
48 --) # end all options
49 shift
50 break
51 ;;
52 -?*)
53 die 'Error: Unknown option specified'
54 ;;
55 *) # No more options
56 break
57 esac
58 shift
59 done
60
61 for cmd in "$@"; do
62 case "$cmd" in
63 loop)
64 julia --color=yes -e "import Granular; Granular.status(loop=true, t_int=$loopinterval)"
65 exit 0
66 ;;
67 visualize)
68 julia --color=yes -e "import Granular; Granular.status(visualize=true)"
69 exit 0
70 ;;
71 *)
72 die 'Unknown commmand specified'
73 ;;
74 esac
75 done
76 julia --color=yes -e "import Granular; Granular.status()"