Tidied up colour code.
This commit is contained in:
parent
953d79e3e3
commit
d6402bc17e
112
gnscli.sh
112
gnscli.sh
|
@ -1,14 +1,14 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# start/stop/del with multiple args broken
|
||||||
|
|
||||||
# rename node issue when matching multiple
|
# rename node issue when matching multiple
|
||||||
# rename project
|
# rename project
|
||||||
# node stop givesjq error
|
# node stop givesjq error
|
||||||
|
|
||||||
# connect xxx & [opens iterm (or whatever)]
|
# connect xxx & [opens iterm (or whatever)]
|
||||||
|
|
||||||
|
VER=1.0
|
||||||
|
|
||||||
VER=0.1
|
|
||||||
|
|
||||||
# helper function to turn a directory of scripts into inline
|
# helper function to turn a directory of scripts into inline
|
||||||
## defaults at the end of this script
|
## defaults at the end of this script
|
||||||
|
@ -87,7 +87,7 @@ function initauth() {
|
||||||
if [[ $doscripts -eq 1 ]]; then
|
if [[ $doscripts -eq 1 ]]; then
|
||||||
mkscripts "$SCRIPTDIR"
|
mkscripts "$SCRIPTDIR"
|
||||||
fi
|
fi
|
||||||
echo -e "$BOLD${CYAN}Initialisation of $BOLD$CONFDIR$PLAIN complete.$PLAIN"
|
cecho -s "$CYAN" "Initialisation of ^b$CONFDIR^p complete."
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -217,7 +217,7 @@ function getstr() { # getstr last_prompt_char default_answer "prompt string"
|
||||||
shift
|
shift
|
||||||
prompt="$*"
|
prompt="$*"
|
||||||
retstr=""
|
retstr=""
|
||||||
echo -n -e "${PURPLE}$prompt [$BOLD$def$PLAIN$PURPLE]${lastchar}${PLAIN} "
|
echo -n -e "${NOTIFYNDCOL}$prompt [${NOTIFYNDCOLB}$def$NOTIFYNDCOL]${lastchar}${PLAIN} "
|
||||||
read retstr
|
read retstr
|
||||||
echo -e "$PLAIN"
|
echo -e "$PLAIN"
|
||||||
[[ -z $retstr ]] && retstr="$def"
|
[[ -z $retstr ]] && retstr="$def"
|
||||||
|
@ -276,6 +276,7 @@ function getcmd() {
|
||||||
pstr="gnscli> "
|
pstr="gnscli> "
|
||||||
|
|
||||||
[[ ! -z $CACHING ]] && info "$CACHING"
|
[[ ! -z $CACHING ]] && info "$CACHING"
|
||||||
|
|
||||||
set -f
|
set -f
|
||||||
builtin read -p "$(echo -en $BOLD)[$(echo -en $PLAIN$pcol)${prefix}$(echo -e "$PLAIN$BOLD")] $pstr$(echo -e "${PLAIN}")" -e -r input
|
builtin read -p "$(echo -en $BOLD)[$(echo -en $PLAIN$pcol)${prefix}$(echo -e "$PLAIN$BOLD")] $pstr$(echo -e "${PLAIN}")" -e -r input
|
||||||
set +f
|
set +f
|
||||||
|
@ -306,7 +307,7 @@ function profile() {
|
||||||
local fname
|
local fname
|
||||||
fname=${FUNCNAME[2]}
|
fname=${FUNCNAME[2]}
|
||||||
[[ -z $fname ]] && fname=${FUNCNAME[1]}
|
[[ -z $fname ]] && fname=${FUNCNAME[1]}
|
||||||
[[ $PROFILING -eq 1 ]] && echo -e "${YELLOW}${BOLD}${FUNCNAME[1]}(): ${PLAIN}${YELLOW}$*${PLAIN}" 1>&2
|
[[ $PROFILING -eq 1 ]] && cecho -s "$YELLOW" "^b${FUNCNAME[1]}(): ^p$*" 1>&2
|
||||||
}
|
}
|
||||||
|
|
||||||
function harddebug() {
|
function harddebug() {
|
||||||
|
@ -321,29 +322,64 @@ function debug() {
|
||||||
fi
|
fi
|
||||||
if [[ $VERBOSE -eq 1 ]]; then
|
if [[ $VERBOSE -eq 1 ]]; then
|
||||||
if [[ $force -eq 1 ]]; then
|
if [[ $force -eq 1 ]]; then
|
||||||
echo -e "${PURPLE}${BOLD}${FUNCNAME[1]}(): ${PLAIN}${PURPLE}$*${PLAIN}" >/dev/stderr
|
echo -e "${NOTIFYCOLB}${FUNCNAME[1]}(): ${NOTIFYCOL}$*${PLAIN}" >/dev/stderr
|
||||||
else
|
else
|
||||||
echo -e "${PURPLE}${BOLD}${FUNCNAME[1]}(): ${PLAIN}${PURPLE}$*${PLAIN}" 1>&2
|
echo -e "${NOTIFYCOLB}${FUNCNAME[1]}(): ${NOTIFYCOL}$*${PLAIN}" 1>&2
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# 'str' can contain:
|
||||||
|
# ^b bold
|
||||||
|
# ^i italic
|
||||||
|
# ^p plain
|
||||||
|
#
|
||||||
|
function cecho() { # [-n] [-s] col boldcol "str"
|
||||||
|
local col bcol str minusn="" autobold=0
|
||||||
|
|
||||||
|
while [[ ${1:0:1} == "-" ]]; do
|
||||||
|
if [[ $1 == "-n" ]]; then
|
||||||
|
minusn="-n"
|
||||||
|
fi
|
||||||
|
if [[ $1 == "-s" ]]; then
|
||||||
|
autobold=1
|
||||||
|
fi
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
col="$1"
|
||||||
|
shift
|
||||||
|
if [[ $autobold -eq 1 ]]; then
|
||||||
|
bcol="$col$BOLD"
|
||||||
|
else
|
||||||
|
bcol="$1"
|
||||||
|
shift
|
||||||
|
fi
|
||||||
|
str="$*"
|
||||||
|
str=${str//\^b/${bcol}}
|
||||||
|
str=${str//\^p/${PLAIN}${col}}
|
||||||
|
str=${str//\^i/${col}${ITALIC}}
|
||||||
|
|
||||||
|
echo $minusn -e "${col}${str}${PLAIN}" 1>&2
|
||||||
|
}
|
||||||
|
|
||||||
function info() {
|
function info() {
|
||||||
echo -e "${CYAN}${BOLD}${ITALIC}[$*]${PLAIN}" 1>&2
|
cecho -s "$CYAN" "^i[$*]" 1>&2
|
||||||
}
|
}
|
||||||
|
|
||||||
function error() {
|
function error() {
|
||||||
[[ $innotify -eq 1 ]] && fail
|
[[ $innotify -eq 1 ]] && fail
|
||||||
echo -e "${RED}${BOLD}ERROR: ${PLAIN}${RED}$*${PLAIN}" 1>&2
|
cecho -s "$RED" "^bERROR: ^p$*" 1>&2
|
||||||
}
|
}
|
||||||
|
|
||||||
function notify() {
|
function notify() {
|
||||||
echo -en "${PURPLE}${BOLD}* ${PLAIN}${PURPLE}$*...${PLAIN} " 1>&2
|
#echo -en "${NOTIFYCOLB}* ${NOTIFYCOL}$*...${PLAIN} " 1>&2
|
||||||
|
cecho -n "$NOTIFYCOL" "$NOTIFYCOLB" "^b* ^p$*... " 1>&2
|
||||||
innotify=1
|
innotify=1
|
||||||
}
|
}
|
||||||
|
|
||||||
function notify_nodots() {
|
function notify_nodots() {
|
||||||
echo -e "${PURPLE}${BOLD}* ${PLAIN}${PURPLE}$*${PLAIN} " 1>&2
|
#echo -e "${NOTIFYNDCOLB}* ${NOTIFYNDCOL}$*${PLAIN} " 1>&2
|
||||||
|
cecho "$NOTIFYNDCOL" "$NOTIFYNDCOLB" "^b* ^p$* " 1>&2
|
||||||
}
|
}
|
||||||
|
|
||||||
function ok() {
|
function ok() {
|
||||||
|
@ -361,7 +397,7 @@ function fail() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function warn() {
|
function warn() {
|
||||||
echo -e "${YELLOW}${BOLD}Warning: ${PLAIN}${YELLOW}$*${PLAIN}" 1>&2
|
cecho -s "$YELLOW" "^bWarning: ^p$*" 1>&2
|
||||||
}
|
}
|
||||||
|
|
||||||
function usage() {
|
function usage() {
|
||||||
|
@ -1516,8 +1552,8 @@ function runaction() { # runaction <nodes|vms|etc> <actionname> targetlist optio
|
||||||
local actionname line all
|
local actionname line all
|
||||||
local force=0 foreground=0 f rv files n thisfile jqres goterror
|
local force=0 foreground=0 f rv files n thisfile jqres goterror
|
||||||
local good allgoodresults errs allbadresults
|
local good allgoodresults errs allbadresults
|
||||||
# oooo change this
|
|
||||||
local jqf
|
local jqf
|
||||||
|
# oooo change this
|
||||||
local jqf_bad='[ "_DC_", "_OB_", .fault.detail, .fault.reason, .status ] | @csv'
|
local jqf_bad='[ "_DC_", "_OB_", .fault.detail, .fault.reason, .status ] | @csv'
|
||||||
local objecttype extrainfo
|
local objecttype extrainfo
|
||||||
|
|
||||||
|
@ -1596,7 +1632,6 @@ debug -f "--> extrainfo = $extrainfo"
|
||||||
objecttype=$(echo ${what:0:1} | tr '[a-z]' '[A-Z]')${what:1}
|
objecttype=$(echo ${what:0:1} | tr '[a-z]' '[A-Z]')${what:1}
|
||||||
|
|
||||||
[[ $objecttype == "Model" ]] && objecttype="Node"
|
[[ $objecttype == "Model" ]] && objecttype="Node"
|
||||||
# oooo
|
|
||||||
# figure out jq based on action
|
# figure out jq based on action
|
||||||
if [[ $actionname == "add" && $endpoint == "model" ]]; then
|
if [[ $actionname == "add" && $endpoint == "model" ]]; then
|
||||||
allgoodresults="Server,${objecttype},Ports"
|
allgoodresults="Server,${objecttype},Ports"
|
||||||
|
@ -1663,7 +1698,7 @@ debug -f "--> extrainfo = $extrainfo"
|
||||||
echo
|
echo
|
||||||
if [[ $errs -gt 0 ]]; then
|
if [[ $errs -gt 0 ]]; then
|
||||||
local fullres_bad
|
local fullres_bad
|
||||||
echo -e "${RED}$errs x '${BOLD}$actionname${PLAIN}${RED}' actions failed:${PLAIN}"
|
cecho -s "${RED}" "$errs x '^b$actionname^p' actions failed:"
|
||||||
echo -e "${RED}"
|
echo -e "${RED}"
|
||||||
echo "$allbadresults" | sed -e 's/^/ /'
|
echo "$allbadresults" | sed -e 's/^/ /'
|
||||||
echo -e "${PLAIN}"
|
echo -e "${PLAIN}"
|
||||||
|
@ -1672,7 +1707,7 @@ debug -f "--> extrainfo = $extrainfo"
|
||||||
|
|
||||||
if [[ $good -ge 1 ]]; then
|
if [[ $good -ge 1 ]]; then
|
||||||
local fullres
|
local fullres
|
||||||
echo -e "${GREEN}$good x '${BOLD}$actionname${PLAIN}${GREEN}' actions submitted successfully.${PLAIN}"
|
cecho -s "${GREEN}" "$good x '^b$actionname^p' actions submitted successfully."
|
||||||
|
|
||||||
# More than just a heading?
|
# More than just a heading?
|
||||||
if [[ $(echo -e "$allgoodresults" | wc -l | bc) -gt 1 ]]; then
|
if [[ $(echo -e "$allgoodresults" | wc -l | bc) -gt 1 ]]; then
|
||||||
|
@ -1875,7 +1910,7 @@ debug all pids finished
|
||||||
|
|
||||||
rescount=$(printf %d $(echo -n "$all" | wc -c))
|
rescount=$(printf %d $(echo -n "$all" | wc -c))
|
||||||
if [[ $rescount -eq 0 ]]; then
|
if [[ $rescount -eq 0 ]]; then
|
||||||
echo -e " ${BOLD}${YELLOW}(no results)${PLAIN}"
|
cecho -s "$YELLOW" " ^b(no results)"
|
||||||
echo
|
echo
|
||||||
rm -f $TMPDIR/get.*
|
rm -f $TMPDIR/get.*
|
||||||
rm -f $TMPDIR/err.*
|
rm -f $TMPDIR/err.*
|
||||||
|
@ -1958,7 +1993,7 @@ debug "dotscript:\n${dotscript}"
|
||||||
greenwords="true up enabled"
|
greenwords="true up enabled"
|
||||||
redwords="false down paused uninitialized disabled"
|
redwords="false down paused uninitialized disabled"
|
||||||
yellowwords="migrating"
|
yellowwords="migrating"
|
||||||
uuidcol="$PURPLE"
|
uuidcol="$NOTIFYCOL"
|
||||||
|
|
||||||
while read -r line ; do
|
while read -r line ; do
|
||||||
key=${line%%:*}
|
key=${line%%:*}
|
||||||
|
@ -2193,7 +2228,7 @@ debug "alluuids is $alluuids"
|
||||||
if [[ $nobs -gt 1 && $multiallowed -eq 0 ]]; then
|
if [[ $nobs -gt 1 && $multiallowed -eq 0 ]]; then
|
||||||
debug "actionfilter=$actionfilter"
|
debug "actionfilter=$actionfilter"
|
||||||
|
|
||||||
notify_nodots "'${BOLD}${actionfilter}${PLAIN}${PURPLE}' matched multiple ${whattolist}s"
|
notify_nodots "'${NOTIFYNDCOLB}${actionfilter}${NOTIFYNDCOL}' matched multiple ${whattolist}s"
|
||||||
narrowdown "$whattolist" "$allobs" "$alluuids" selobname selobuuid || rv=1
|
narrowdown "$whattolist" "$allobs" "$alluuids" selobname selobuuid || rv=1
|
||||||
else
|
else
|
||||||
selobname="$allobs"
|
selobname="$allobs"
|
||||||
|
@ -2502,11 +2537,11 @@ debug "post replacedargs is [$replacedargs]"
|
||||||
echo -e "$PLAIN"
|
echo -e "$PLAIN"
|
||||||
res=$(uuid_to_name ${arg})
|
res=$(uuid_to_name ${arg})
|
||||||
if [[ $? -eq 0 ]]; then
|
if [[ $? -eq 0 ]]; then
|
||||||
echo -e "${CYAN} UUID ${BOLD}${arg}${PLAIN}${CYAN} -> ${res}"
|
cecho -s "${CYAN}" " UUID ^b${arg}^p -> ${res}"
|
||||||
else
|
else
|
||||||
res=$(name_to_uuid ${arg})
|
res=$(name_to_uuid ${arg})
|
||||||
if [[ $? -eq 0 ]]; then
|
if [[ $? -eq 0 ]]; then
|
||||||
echo -e "${CYAN} UUID ${res} -> ${BOLD}${arg}${PLAIN}"
|
cecho -s "${CYAN}" " UUID ${res} -> ^b${arg}^p"
|
||||||
else
|
else
|
||||||
error "No cache results found for ${arg}"
|
error "No cache results found for ${arg}"
|
||||||
fi
|
fi
|
||||||
|
@ -2578,7 +2613,7 @@ debug "post replacedargs is [$replacedargs]"
|
||||||
else
|
else
|
||||||
debug "newnodetype is $newnodetype"
|
debug "newnodetype is $newnodetype"
|
||||||
debug "newnodeuuid is $newnodetype_uuid"
|
debug "newnodeuuid is $newnodetype_uuid"
|
||||||
notify_nodots "Adding a new ${BOLD}$newnodetype${PLAIN}${PURPLE} named $BOLD$newname${PLAIN}"
|
notify_nodots "Adding a new ${NOTIFYNDCOLB}$newnodetype${NOTIFYNDCOL} named ${NOTIFYNDCOLB}$newname${PLAIN}"
|
||||||
confirm=1
|
confirm=1
|
||||||
fi
|
fi
|
||||||
elif [[ $endpoint == "link" ]]; then
|
elif [[ $endpoint == "link" ]]; then
|
||||||
|
@ -2619,7 +2654,7 @@ debug "adapnumlist is $adapnumlist"
|
||||||
debug "${letter}-node ${dev[$x]} port ${port[$x]} is OK (${dev[$x]})"
|
debug "${letter}-node ${dev[$x]} port ${port[$x]} is OK (${dev[$x]})"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
notify_nodots "Adding a link from ${BOLD}${dev[0]} ${port[0]}${PLAIN}${PURPLE} to ${BOLD}${dev[1]} ${port[1]}${PLAIN}"
|
notify_nodots "Adding a link from ${NOTIFYNDCOLB}${dev[0]} ${port[0]}${NOTIFYNDCOL} to ${NOTIFYNDCOLB}${dev[1]} ${port[1]}${PLAIN}"
|
||||||
confirm=1
|
confirm=1
|
||||||
fi
|
fi
|
||||||
else # action is not add/connect
|
else # action is not add/connect
|
||||||
|
@ -2644,7 +2679,7 @@ debug "adapnumlist is $adapnumlist"
|
||||||
else
|
else
|
||||||
textdata="$data"
|
textdata="$data"
|
||||||
fi
|
fi
|
||||||
echo -e "${PURPLE}About to run '${BOLD}$actionname${PLAIN}${PURPLE}' on ${BOLD}${nobs}${PLAIN}${PURPLE} ${whattolist}${ob_ess} on ${BOLD}${ndcs}${PLAIN}${PURPLE} server${dc_ess}:${PLAIN}"
|
cecho "$NOTIFYNDCOL" "$NOTIFYNDCOLB" "About to run '^b$actionname^p' on ^b${nobs}^p ${whattolist}${ob_ess} on ^b${ndcs}^p server${dc_ess}:"
|
||||||
echo -e "$textdata" | awk -F, "BEGIN {lastdc=\"\"} { if (\$1 != lastdc) { print \" ${YELLOW}- ${BOLD}\" \$1 \" -> project=${curproj}${PLAIN}\"; lastdc=\$1; } print \" ${YELLOW}- \" \$2 \"${PLAIN}\"}"
|
echo -e "$textdata" | awk -F, "BEGIN {lastdc=\"\"} { if (\$1 != lastdc) { print \" ${YELLOW}- ${BOLD}\" \$1 \" -> project=${curproj}${PLAIN}\"; lastdc=\$1; } print \" ${YELLOW}- \" \$2 \"${PLAIN}\"}"
|
||||||
|
|
||||||
echo
|
echo
|
||||||
|
@ -2654,7 +2689,7 @@ debug "adapnumlist is $adapnumlist"
|
||||||
else
|
else
|
||||||
local confirmcode entered_string
|
local confirmcode entered_string
|
||||||
confirmcode=$(generate_random_string)
|
confirmcode=$(generate_random_string)
|
||||||
notify_nodots "Confirmation code is: ${BOLD}${confirmcode}${PLAIN}"
|
notify_nodots "Confirmation code is: ${NOTIFYDCOLBOLD}${confirmcode}${NOTIFYDCOL}"
|
||||||
getstr ":" "n" "Enter the above code to proceed, anything else will abort"
|
getstr ":" "n" "Enter the above code to proceed, anything else will abort"
|
||||||
entered_string="$retstr"
|
entered_string="$retstr"
|
||||||
[[ $entered_string == $confirmcode ]] && confirm=1 || confirm=0
|
[[ $entered_string == $confirmcode ]] && confirm=1 || confirm=0
|
||||||
|
@ -2991,9 +3026,18 @@ GREEN="\033[32m"
|
||||||
BLUE="\033[34m"
|
BLUE="\033[34m"
|
||||||
MAGENTA="\033[35m"
|
MAGENTA="\033[35m"
|
||||||
CYAN="\033[36m"
|
CYAN="\033[36m"
|
||||||
ORANGE="\033[38;2;255;165;0m"
|
ORANGE="${PLAIN}\033[38;2;255;165;0m"
|
||||||
PURPLE="\033[38;2;200;0;200m"
|
ORANGEBOLD="${BOLD}\033[38;2;255;220;0m"
|
||||||
#PURPLE="\033[35m"
|
|
||||||
|
MAGENTARGB="${PLAIN}\033[38;2;208;65;126m"
|
||||||
|
MAGENTARGBBOLD="${BOLD}\033[38;2;255;135;196m"
|
||||||
|
|
||||||
|
|
||||||
|
NOTIFYNDCOL="$ORANGE"
|
||||||
|
NOTIFYNDCOLB="$ORANGEBOLD"
|
||||||
|
NOTIFYCOL="$MAGENTARGB"
|
||||||
|
NOTIFYCOLB="$MAGENTARGBBOLD"
|
||||||
|
|
||||||
GREY="\033[38;2;110;110;110m"
|
GREY="\033[38;2;110;110;110m"
|
||||||
LINK="$BLUE$UNDERLINE"
|
LINK="$BLUE$UNDERLINE"
|
||||||
|
|
||||||
|
@ -3013,7 +3057,7 @@ CURLERRORSTRINGS="(^40.:|error|status.*40.)"
|
||||||
UUIDCHAR="[0-9a-f]"
|
UUIDCHAR="[0-9a-f]"
|
||||||
UUID_REGEXP=${UUIDCHAR}\{8\}-${UUIDCHAR}\{4\}-${UUIDCHAR}\{4\}-${UUIDCHAR}\{4\}-${UUIDCHAR}\{12\}
|
UUID_REGEXP=${UUIDCHAR}\{8\}-${UUIDCHAR}\{4\}-${UUIDCHAR}\{4\}-${UUIDCHAR}\{4\}-${UUIDCHAR}\{12\}
|
||||||
WORDCOLOURS=( "${GREEN}" "${RED}" "${YELLOW}" )
|
WORDCOLOURS=( "${GREEN}" "${RED}" "${YELLOW}" )
|
||||||
UUIDCOL="$PURPLE"
|
UUIDCOL="$NOTIFYCOL"
|
||||||
COLOURED_WORDS=( "true\|up\|enabled\|complete\|finished\|started\|opened" "false\|down\|paused\|uninitialized\|disabled\|failed\|stopped\|closed" "migrating\|powering_up\|project_closed\|unknown" )
|
COLOURED_WORDS=( "true\|up\|enabled\|complete\|finished\|started\|opened" "false\|down\|paused\|uninitialized\|disabled\|failed\|stopped\|closed" "migrating\|powering_up\|project_closed\|unknown" )
|
||||||
ADD_COLOURS=""
|
ADD_COLOURS=""
|
||||||
for colidx in ${!WORDCOLOURS[@]}; do
|
for colidx in ${!WORDCOLOURS[@]}; do
|
||||||
|
@ -3210,7 +3254,7 @@ cat "$errfile"
|
||||||
rv=$?
|
rv=$?
|
||||||
if [[ $rv -ne 0 || -z $jqoutput ]]; then
|
if [[ $rv -ne 0 || -z $jqoutput ]]; then
|
||||||
error "$rv Got bad data from initial project list query to API"
|
error "$rv Got bad data from initial project list query to API"
|
||||||
echo -e "${RED}${BOLD}Errors:${PLAIN}"
|
cecho -s "${RED}" "^bErrors:^p"
|
||||||
echo -en "${RED}"
|
echo -en "${RED}"
|
||||||
cat "${errfile}" | sed -e 's/^/ /'
|
cat "${errfile}" | sed -e 's/^/ /'
|
||||||
echo -en "${PLAIN}"
|
echo -en "${PLAIN}"
|
||||||
|
@ -3227,11 +3271,11 @@ cat "$errfile"
|
||||||
else
|
else
|
||||||
fail
|
fail
|
||||||
error "Could not obtain initial project list from API"
|
error "Could not obtain initial project list from API"
|
||||||
echo -e "${RED}${BOLD}Output:${PLAIN}"
|
cecho -s "${RED}" "^bOutput:^p"
|
||||||
echo -en "${RED}"
|
echo -en "${RED}"
|
||||||
echo "${output}" | sed -e 's/^/ /'
|
echo "${output}" | sed -e 's/^/ /'
|
||||||
echo -en "${PLAIN}"
|
echo -en "${PLAIN}"
|
||||||
echo -e "${RED}${BOLD}Errors:${PLAIN}"
|
cecho -s "${RED}" "^bErrors:^p"
|
||||||
echo -en "${RED}"
|
echo -en "${RED}"
|
||||||
cat "${errfile}" | sed -e 's/^/ /'
|
cat "${errfile}" | sed -e 's/^/ /'
|
||||||
echo -en "${PLAIN}"
|
echo -en "${PLAIN}"
|
||||||
|
@ -3253,7 +3297,7 @@ dumpmsgq
|
||||||
trap cleanup EXIT
|
trap cleanup EXIT
|
||||||
|
|
||||||
echo -e "${UNDERLINE}Unofficial GNS3 cli v${VER}${PLAIN}"
|
echo -e "${UNDERLINE}Unofficial GNS3 cli v${VER}${PLAIN}"
|
||||||
echo -e "${ITALIC}${YELLOW}Note: this script is still in development and may have bugs!${PLAIN}"
|
#echo -e "${ITALIC}${YELLOW}Note: this script is still in development and may have bugs!${PLAIN}"
|
||||||
|
|
||||||
if [[ $# -gt 0 ]]; then
|
if [[ $# -gt 0 ]]; then
|
||||||
processcmd $*
|
processcmd $*
|
||||||
|
|
Loading…
Reference in New Issue