#!/bin/bash _qCol() { # print "easier" mapping of ANSI colors and controls local K="\033[1;30m" local R="\033[1;31m" local G="\033[1;32m" local B="\033[1;34m" local Y="\033[1;33m" local M="\033[1;35m" local C="\033[1;36m" local W="\033[1;37m" local k="\033[2;30m" local r="\033[2;31m" local g="\033[2;32m" local b="\033[2;34m" local y="\033[2;33m" local m="\033[2;35m" local c="\033[2;36m" local w="\033[2;37m" local bk="\033[40m" local br="\033[41m" local bg="\033[42m" local by="\033[43m" local bb="\033[44m" local bm="\033[45m" local bc="\033[46m" local bw="\033[47m" local S='\033[1m' #strong local s='\033[2m' #strong off local U='\033[4m' #underline local u='\033[24m' #underline off local z='\033[0m' #zero colors local Z='\033[0m' #zero colors local ic='\033[7m' #inverse colors local io='\033[27m' #inverse off local st='\033[9m' #strike on local so='\033[29m' #strike off local CLR='\033[2J' # Clear screen local CLREND='\033[K' # Clear to end of line local CLRBEG='\033[1K' # Clear to beginning of line local CLRSCR="$CLR"'\033[0;0H' # Clear screen, reset cursor local color_keys=" K R G B Y M C W k r g b y m c w S s U u z Z ic io st so bk br bg by bb bm bc bw CLR CLREND CLRBEG CLRSCR " [[ "$1" = "export" ]] && { local key local prefix="$2" [[ -z "$2" ]] && prefix=_c for key in $color_keys; do eval export ${prefix}${key}=\'${!key}\' done return } local arg val for ((arg=1;arg<=$#;arg++)) { val=${!arg} [[ ${color_keys} = *" $val "* ]] || { echo "No such color code '${val}'" >&2; return 1; } printf ${!val} } } cont() { set +x _qCol G echo Continue _qCol z read continue _qCol Y echo ========================================= _qCol z set -x } set -e BIG="big file(1).ext" BIGS="big_file1.ext" SMALL="small file" SMALLS="small_file" test -f "$BIG" || dd if=/dev/zero of="$BIG" bs=8192 count=40000 test -f "$SMALL" ||dd if=/dev/urandom of="$SMALL" bs=4096 count=400 set -x ../code/flees-manager.py list cont ../code/flees-manager.py show test -P cont ../code/flees-manager.py modify -n test -P true -u true -d true -t testToken cont ../code/flees-manager.py rest test flip -t testToken | tail -n 1 | xargs curl -o test-flip chmod +x test-flip ./test-flip cont ./test-flip update cont eval $( ./test-flip upload | tail -n 1 | sed -e 's,#,,' -e 's,file_to_upload.ext,,'; echo \"$BIG\" ) sleep 2 cont ./test-flip url "$BIGS" | xargs curl -s -D /dev/stderr | head -c 1 | head -c 0 cont ./test-flip w "$SMALL" cont ./test-flip cont ./test-flip r "$SMALLS" | sha256sum cat "$SMALL" | sha256sum cont eval $( ../code/flees-manager.py rest test upload -t testToken | grep bash | sed -e 's,#,,' -e 's,file_to_upload.*,,' ; echo \"$BIG\" ) cont echo | ./test-flip d "$SMALLS" echo | ./test-flip d "$BIGS" cont ../code/flees-manager.py modify -n test --remove-token testToken cont rm -f test-flip "$SMALL" "$BIG"