bash and dash require for escape sequence to use 'echo -e' or printf (but working on zsh). Choosing printf as it's implementation is IMHO more portable than echo implementations. dash also require to use \033[0; as escape sequence instead of \e[0;
NOTE: \e[0; kept in lib/color.c as it's not problematic for C code (working when run ip on various shells). Fixes: 7e2f71b4 ("testsuite: colorize test result output") Signed-off-by: Petr Vorel <pvo...@suse.cz> --- testsuite/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/testsuite/Makefile b/testsuite/Makefile index 9b0f1c15..7f247bbc 100644 --- a/testsuite/Makefile +++ b/testsuite/Makefile @@ -85,11 +85,11 @@ endif TC="$$i/tc/tc" IP="$$i/ip/ip" SS=$$i/misc/ss DEV="$(DEV)" IPVER="$@" SNAME="$$i" \ ERRF="$(RESULTS_DIR)/$@.$$o.err" $(PREFIX) tests/$@ > $(RESULTS_DIR)/$@.$$o.out; \ if [ "$$?" = "127" ]; then \ - echo "\e[1;35mSKIPPED\e[0m"; \ + printf "\033[1;35mSKIPPED\033[0m\n"; \ elif [ -e "$(RESULTS_DIR)/$@.$$o.err" ]; then \ - echo "\e[0;31mFAILED\e[0m"; \ + printf "\033[0;31mFAILED\033[0m\n"; \ else \ - echo "\e[0;32mPASS\e[0m"; \ + printf "\033[0;32mPASS\033[0m\n"; \ fi; \ rm "$$TMP_ERR" "$$TMP_OUT"; \ sudo dmesg > $(RESULTS_DIR)/$@.$$o.dmesg; \ -- 2.19.2