Я пытался получить цвета во время работы shellcheck <file> | less
, поэтому я попробовал ответы выше, но они производят этот странный эффект, когда текст горизонтально смещен относительно того, где он должен быть:
In ./all/update.sh line 6:
for repo in $(cat repos); do
^-- SC2013: To read lines rather than words, pipe/redirect to a 'while read' loop.
(Для тех, кто не знаком с shellcheck, строка с предупреждением должна совпадать с тем, где проблема.)
Для того, чтобы ответы выше работали с shellcheck, я попробовал один из вариантов из комментариев:
faketty() {
0</dev/null script -qfc "$(printf "%q " "$@")" /dev/null
}
Это работает. Я также добавил --return
и использовал длинные опции, чтобы сделать эту команду чуть менее непостижимой:
faketty() {
0</dev/null script --quiet --flush --return --command "$(printf "%q " "$@")" /dev/null
}
Работает в Баш и Зш.