Previous: Formatting file timestamps, Up: ls invocation


10.1.7 Formatting the file names

These options change how file names themselves are printed.

‘-b’
‘--escape’
‘--quoting-style=escape’
Quote nongraphic characters in file names using alphabetic and octal backslash sequences like those used in C.
‘-N’
‘--literal’
‘--quoting-style=literal’
Do not quote file names. However, with ls nongraphic characters are still printed as question marks if the output is a terminal and you do not specify the --show-control-chars option.
‘-q’
‘--hide-control-chars’
Print question marks instead of nongraphic characters in file names. This is the default if the output is a terminal and the program is ls.
‘-Q’
‘--quote-name’
‘--quoting-style=c’
Enclose file names in double quotes and quote nongraphic characters as in C.
‘--quoting-style=word’
Use style word to quote file names and other strings that may contain arbitrary characters. The word should be one of the following:
‘literal’
Output strings as-is; this is the same as the -N or --literal option.
‘shell’
Quote strings for the shell if they contain shell metacharacters or would cause ambiguous output. The quoting is suitable for POSIX-compatible shells like bash, but it does not always work for incompatible shells like csh.
‘shell-always’
Quote strings for the shell, even if they would normally not require quoting.
‘c’
Quote strings as for C character string literals, including the surrounding double-quote characters; this is the same as the -Q or --quote-name option.
‘escape’
Quote strings as for C character string literals, except omit the surrounding double-quote characters; this is the same as the -b or --escape option.
‘clocale’
Quote strings as for C character string literals, except use surrounding quotation marks appropriate for the locale.
‘locale’
Quote strings as for C character string literals, except use surrounding quotation marks appropriate for the locale, and quote 'like this' instead of "like this" in the default C locale. This looks nicer on many displays.

You can specify the default value of the --quoting-style option with the environment variable QUOTING_STYLE. If that environment variable is not set, the default value is ‘literal’, but this default may change to ‘shell’ in a future version of this package.

‘--show-control-chars’
Print nongraphic characters as-is in file names. This is the default unless the output is a terminal and the program is ls.