使用Python,我得到
$ python3 -c 'print("\\\n")'
\
$
也就是说,一个反斜杠和一个换行符,然后由解释器插入一个额外的换行符。
使用C编译代码
#include <stdio.h>
int main(void)
{
printf("\\\n");
return 0;
}
到文件backslash.out
产量
$ ./backslash.out
\
$
也就是说,一个反斜杠和一个换行符。
在bash中,我得到
$ STRING="\\\n"
$ printf "${STRING}"
\n$
bash printf命令在这里到底在做什么?就转义字符而言,它与pythonprint
或Cprintf
命令有什么不同\
?我需要在变量中STRING
添加什么才能在终端上获得以下输出:
$ printf "${STRING}"
\
$
在下面的代码段中,您在反斜杠转义符周围使用“双引号”:
$ STRING="\\\n"
$ printf "${STRING}"
\n$
但是,Bash仍会在双引号内评估一些反斜杠转义符,因此,此变量之后的内容的确是\\n
,据"\\"
评估为\
。
将字符串放在“单引号”中,以防止外壳触碰到任何反斜杠:
$ STRING='\\\n'
$ printf "$STRING"
\
$
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句