Gnu/coreutils/Formatting-the-file-names
Previous: Formatting file timestamps, Up: ls invocation [Contents][Index]
10.1.6 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. Theword
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 likecsh
.- ‘
shell-always
’ Quote strings for the shell, even if they would normally not require quoting.
- ‘
shell-escape
’ Like ‘
shell
’, but also quoting non-printable characters using the POSIX proposed ‘$
’ syntax suitable for most shells.- ‘
shell-escape-always
’ Like ‘
shell-escape
’, but quote strings 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 variableQUOTING_STYLE
. If that environment variable is not set, the default value is ‘shell-escape
’ when the output is a terminal, and ‘literal
’ otherwise.- ‘
- ‘
--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
.
Previous: Formatting file timestamps, Up: ls invocation [Contents][Index]