Претендовать быть tty в bash для любой команды [дубликата]

На этот вопрос уже есть ответ:

Заставьте приложение думать, что его стандартный вывод - это терминал, а не канал 8 ответов

Когда бы я ни использовалgrep, и я передаю его в другую программу,--color опция не соблюдается. Я знаю, что мог бы использовать--color=always, но он также предлагает некоторые другие команды, которые я хотел бы получить точный вывод этой команды в качестве вывода, который я получил бы, если бы я был в tty.

Так что мой вопрос: можно ли обмануть команду, думая, что она выполняется внутри tty?

Например, работает

grep --color word file # Outputs some colors
grep --color word file | cat # Doesn't output any colors

Я бы хотел написать что-то вроде:

IS_TTY=TRUE grep --color word file | cat  # Outputs some colors

Этот вопро, кажется, есть инструмент, который может делать то, что я хочу:empty - запуск процессов и приложений под псевдотерминалом (PTY), но из того, что я мог прочитать в документации, я не уверен, что это может помочь для моей проблемы

Ответы на вопрос(1)

Ваш ответ на вопрос