Will man mit Dateinamen arbeiten, welche Sonderzeichen enthalten, muss man bedenken, dass die BASH bei einem construct alla: cat foo>bar den Zeichsatz in ascii wandelt. Will man nun wieder, z.B. mit PERL, diese Daten verarbeiten, muss man explizit die Ausgabe konvertieren mit
binmode(STDOUT , ":encoding(utf-8)" );
Das Problem ist hier, dass ls Farben standardmäßig nur bei Ausgabe auf tty anzeigt. Um beim Pipen nach less dennoch Farben zu bekommen, ist es nötig den zusätzlichen Parameter --color zu benutzen:
ls -alG --color=always | less -R