В отсутствие утилиты clear
или tput
и учитывая, что обычные escape-последовательности ANSI не работают с (встроенным) printf
, вы должны вызвать либо cmd.exe
, либо PowerShell для очистки экрана:
bash$ powershell -noprofile -c cls
Использование cmd
быстрее, но проблема в том, что win-bash вызывает внешние программы путем двойных кавычек каждого аргумента за кулисами, что приводит к неправильной работе такой команды, как cmd /c cls
; следующий обходной путь в основном работает, но печатает строку приглашения cmd.exe
один раз после очистки экрана.
# !! Clears the screen, but prints the cmd.exe prompt string once.
bash$ echo cls | cmd