| #!/bin/bash |
| # ----------------------------------------------------------------------------- |
| # Executes selected set of ONOS commands using the batch mode. |
| # ----------------------------------------------------------------------------- |
| |
| function _usage () { |
| cat << _EOF_ |
| usage: |
| $(basename $0) [node] <commands> |
| |
| options: |
| - [node] <commands> : node to run <commands> |
| |
| summary: |
| Executes selected set of ONOS commands using the batch mode. |
| |
| <commands> is a comma-separated list of ONOS CLI commands. |
| |
| If [node] isn't specified, the defualt target becomes \$OCI. When no commands |
| are specified, the commands 'summary','intents','flows', and 'hosts' are |
| executed against \$OCI. |
| |
| _EOF_ |
| } |
| |
| [ "$1" = "-h" ] && _usage && exit 0 |
| |
| [ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1 |
| . $ONOS_ROOT/tools/build/envDefaults |
| |
| node=${1:-$OCI} |
| |
| commands="${2:-summary,intents,flows,hosts}" |
| |
| aux=/tmp/onos-batch.$$ |
| trap "rm -f $aux" EXIT |
| |
| echo "$commands" | tr ',' '\n' > $aux |
| onos $node -b <$aux |