为什么ls -Q如果文件名为'Z \ 1'则输出为“Z \\ 1”?

时间:2016-03-03 11:18:07

标签: linux ls

$ touch "z\1"
$ ls -Q
"z\\1"

如果文件名为“"z\\1"”,为什么“ls -Q”会将输出设为z\1

输出在'z'和'1'之间出现双斜线。

1 个答案:

答案 0 :(得分:1)

-Q - Switch(也是--quote-names)将引用名称。如何完成此引用由--quoting-style - Switch。

定义

来自man page

的摘录
  

- 引用式= WORD
                使用引用样式WORD作为条目名称:literal,locale,                 shell,shell-always,c,escape

这将导致以下结果:

  • ls --quoting-style=literal "z\1" => z\1
  • ls --quoting-style=locale "z\1" => ‘z\\1’
  • ls --quoting-style=shell "z\1" => 'z\1'
  • ls --quoting-style=shell-always "z\1" => 'z\1'
  • ls --quoting-style=c "z\1" => "z\\1"
  • ls --quoting-style=escape "z\1" => z\\1

我不能告诉你默认是什么。但它必须是其中一个locale, c, escape