stat --format% N quotes

1

Eu usei stat em duas versões diferentes do Ubuntu e imprimi diferentes tipos de citações.

14.04 (coreutils 8.21-1ubuntu5.1):

$ stat --format %N test.txt
‘test.txt’

16.04 (coreutils 8.25-2ubuntu2):

$ stat --format %N test.txt
'test.txt'

Por que o stat usa esse estilo incomum de citação na versão mais antiga e há uma maneira de dizer a stat que tipo de citações ele deve usar?

Editar

Eu sei que na versão 8.26 citando estilo foi introduzido para stat ( link ):

  stat --format=%N for quoting file names now honors the
  same QUOTING_STYLE environment variable values as ls.

Mas antes dessa mudança, deve haver um comportamento consistente entre as versões ou houve outras alterações das quais não conheço?

    
por Sethos II 07.06.2017 / 08:23

1 resposta

4

De a documentação do GNU stat :

The ‘%N’ format can be set with the environment variable QUOTING_STYLE. If that environment variable is not set, the default value is ‘shell-escape’. Valid quoting styles are:

literal
Output strings as-is; this is the same as the -N or --literal option.

...

shell-escape
Like ‘shell’, but also quoting non-printable characters using the POSIX proposed ‘$''’ syntax suitable for most shells.

...

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.

stat não usou essa variável em 8.21 (a alteração foi feita novembro passado . A saída do 14.04 parece ter usado QUOTING_STYLE=locale . Presumivelmente, esse era o padrão (implícito) então.

    
por 07.06.2017 / 08:44