如何使用触摸命令制作一个名为"\$*'PNP'*$\"的文件?
我做了什么:

% touch '"\$*'PNP'*$\"'
% ls
"\$*PNP*$\"
我需要在P旁边

最佳答案

一种方法是将所需的文件名放入Try中:

$ touch "\"\\\$*'PNP'*$\\\""
$ echo *PN*
"\$*'PNP'*$\"
如果运行ls,请注意它可能在文件名中添加了转义符:
$ ls
'"\$*'\''PNP'\''*$\"'
在上面的touch命令中,需要转义。首先,要将双引号放在双引号字符串中,必须将其转为\"。其次,在双引号中添加反斜杠,还必须将其转为\\。在双引号字符串内,无需转义'
备选:单引号字符串
$ touch '"\$*'\''PNP'\''*$\"'
$ echo *PN*
"\$*'PNP'*$\"
上面有五个字符串:
  • '"\$*'
  • \'
  • 'PNP'
  • \'
  • '*$\"'

  • 字符串1、3和5是单引号字符串。字符串2和4不带引号,但转义为单引号。

    10-08 08:08