A opção -b
não é padronizada , portanto, seu comportamento depende da implementação .
Muitos sistemas Linux usam o GNU ls por padrão; define a opção -b
como
print C-style escapes for nongraphic characters
e usa uma elaborada implementação de cotação . O caractere de espaço é um caractere não gráfico e, portanto, acaba escapando.
No macOS, a definição de -b
é diferente:
-B Force printing of non-printable characters (as defined by
ctype(3)
and current locale settings) in file names as\xxx
, where xxx is the numeric value of the character in octal.-b As -B, but use C escape codes whenever possible.
As funções ctype
(ou macros) consideram que o caractere de espaço é imprimível, portanto não é ignorado.