Mercurial > hg > beaglert
diff scripts/run_project.sh @ 108:3068421c0737 ultra-staging
Merged default into ultra-staging
author | Giulio Moro <giuliomoro@yahoo.it> |
---|---|
date | Tue, 18 Aug 2015 00:35:15 +0100 |
parents | d41631e0fe0e |
children | ccd084cf22ac |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/run_project.sh Tue Aug 18 00:35:15 2015 +0100 @@ -0,0 +1,57 @@ +#!/bin/bash +# +# This script runs an already-compiled BeagleRT project on the +# BeagleBone Black. + +BBB_ADDRESS="root@192.168.7.2" +BBB_PATH="~/BeagleRT" +COMMAND_ARGS= +RUN_IN_FOREGROUND=0 +RUN_WITHOUT_SCREEN=0 + +function usage +{ + THIS_SCRIPT=`basename "$0"` + echo "Usage: $THIS_SCRIPT [-b path-on-beaglebone] [-c command-line-args] [-fF]" + + echo " + This script runs a previously compiled BeagleRT project on the + BeagleBone Black. The -b option changes the default path, which + is otherwise $BBB_PATH. The -c option passes command-line arguments + to the BeagleRT program; enclose the argument string in quotes. + + The -f argument runs the project in the foreground of the current terminal, + within a screen session that can be detached later. The -F argument runs + the project in the foreground of the current terminal, without screen, so + the output can be piped to another destination." +} + +OPTIND=1 + +while getopts "b:c:fFh" opt; do + case $opt in + b) BBB_PATH=$OPTARG + ;; + c) COMMAND_ARGS=$OPTARG + ;; + f) RUN_IN_FOREGROUND=1 + ;; + F) RUN_WITHOUT_SCREEN=1 + ;; + h|\?) usage + exit 1 + esac +done + +shift $((OPTIND-1)) + +echo "Running BeagleRT..." +if [ $RUN_WITHOUT_SCREEN -ne 0 ] +then + ssh -t $BBB_ADDRESS "screen -X -S BeagleRT quit &>/dev/null; pkill BeagleRT ; sleep 0.5 ; $BBB_PATH/BeagleRT $COMMAND_ARGS" +elif [ $RUN_IN_FOREGROUND -eq 0 ] +then + ssh $BBB_ADDRESS "screen -X -S BeagleRT quit &>/dev/null; pkill BeagleRT ; sleep 0.5 ; screen -S BeagleRT -d -m $BBB_PATH/BeagleRT $COMMAND_ARGS" +else + ssh -t $BBB_ADDRESS "screen -X -S BeagleRT quit &>/dev/null; pkill BeagleRT ; sleep 0.5 ; screen -S BeagleRT $BBB_PATH/BeagleRT $COMMAND_ARGS" +fi \ No newline at end of file