Ayaka Koshibe
Committed by Yuta Higuchi

vicell command for editing/applying cell configurations

Change-Id: I3e9731342ef015649978941ba984af4fc0af41d2
......@@ -116,3 +116,41 @@ function spy {
function nuke {
spy "$@" | cut -c7-11 | xargs kill
}
# Edit a cell file by providing a cell name. Opens the cell file in $EDITOR.
function vicell() {
local apply=false
local create=false
local cdf=""
local cpath="${ONOS_ROOT}/tools/test/cells/"
if [ -z "$1" ] || [ "$1" = "-h" ] ; then
printf "usage: vicell [file] [options]\n\noptions:\n"
printf "\t-a: apply the cell after editing\n"
printf "\t-e: [editor] set EDITOR to [editor] (default *vi*)\n"
printf "\t-c: create cell file if none exist\n\n"
return 1
fi
while [ $# -gt 0 ]; do
case "$1" in
-a) apply=true ;;
-e) EDITOR=$2; shift ;;
-c) create=true ;;
*) cdf="$1" ;;
esac
shift
done
if [ ! -e "${cpath}${cdf}" ] && [ "$create" = "false" ]; then
printf "${cdf} : no such cell\n" && return 1
fi
if [ -z "$EDITOR" ]; then
vi ${cpath}${cdf}
else
$EDITOR ${cpath}${cdf}
fi
($apply) && cell ${cdf}
}
......