В большинстве (если не во всех) случаях, когда команда * nix печатает цветной вывод без специального запроса пользователя с опцией псевдонимов. Фактически, во многих дистрибутивах Linux есть псевдоним для ls
и grep
определения цветов в глобальном /etc/bash.bashrc
.
Это из моего Linux Mint Debian Edition:
$ grep alias /etc/bash.bashrc alias ls='ls --color=auto' alias grep='grep --colour=auto'
Итак, если ваша программа вызывает эти команды через BASH, вы работаете ls --color=auto
вместо ls
.
Вы можете обойти псевдонимы в BASH (возможно, и другие оболочки, но я не пробовал) следующими способами (взяты отсюда ):
полный путь к команде:
/bin/ls
подстановка команд:
$(which ls)
встроенная команда:
command ls
двойные кавычки:
"ls"
одинарные кавычки:
'ls'
символ обратной косой черты:
\ls
Если вы используете один из этих методов в своем программном обеспечении, вам не нужно беспокоиться о escape-последовательностях.