bash 文档中的“换行符”是什么意思?

bash 文档中的“换行符”是什么意思?

bash 文档说明如下:

不带引号的反斜杠 '\' 是 Bash 转义字符。它保留后面的下一个字符的字面值,但以下情况除外新队。如果一个 \新队出现对,并且反斜杠本身不被引用,\新队被视为行延续(即,它被从输入流中删除并被有效忽略)。

以及以下内容:

仅当反斜杠后跟以下字符之一时,反斜杠才保留其特殊含义:'$'、'`'、'"'、'\' 或新队。在双引号内,后跟这些字符之一的反斜杠将被删除。前面没有特殊含义的反斜杠字符保持不变。

“换行”是什么意思,是“n”字符吗?

答案1

它指的是文字换行符(LF,ASCII 中的十进制数 10),每一行末尾的一个。反斜杠创建连续行,如以下脚本所示:

#!/bin/sh
echo foo\
bar

该脚本包含,当反斜杠换行符被删除时,echo foo\↵bar它会变成。echo foobar所以它输出foobar. (尝试一下。)

答案2

“换行”是什么意思,是“n”字符吗?

不,这不是 n 字符。这是printf此命令中打印的内容:

$ printf '\n'

它也是 ASCII 字符编号 10(十六进制为 0a),在英文中称为“换行 (LF)”ASCII 列表

事实上,维基百科有一个关于它的整个页面

如果您想查看数值(十六进制),这两个命令都会显示它:

$ printf '\n' | od -tx1
0000000 0a
0000001

$ printf '\n' | xxd -p
0a

相关内容