Похоже, что ls
автоматически не включает цвета в подоболочке.
$ echo `ls`
# Output is uncoloured
Мы можем обойти это, используя параметр командной строки --color
.
$ echo `ls --color`
# Output is coloured
Вы можете использовать подобный прием в подоболочке, которая вызывается из Perl.
$ perl -e 'system "ls"'
# Output is uncoloured
$ perl -e 'system "ls --color"'
# Output is coloured.