【发布时间】:2016-04-20 12:38:12
【问题描述】:
1.) 我在虚拟机上使用 Debian 8.4,当我运行命令 wc sample.txt 到 sample.txt 时,包含:
Hello
命令的输出是
1 1 6 sample.txt
多余的字符是EOF吗?如果是这样,那么当我对一个空文件运行相同的命令时,输出是什么......
0 0 0 sample.txt
【问题讨论】:
1.) 我在虚拟机上使用 Debian 8.4,当我运行命令 wc sample.txt 到 sample.txt 时,包含:
Hello
命令的输出是
1 1 6 sample.txt
多余的字符是EOF吗?如果是这样,那么当我对一个空文件运行相同的命令时,输出是什么......
0 0 0 sample.txt
【问题讨论】:
您有一个尾随的新行,这是 wc 报告的内容。
例如,如果我们使用printf 创建一个文件:
$ printf "hello" > a
$ cat a | hexdump -c
0000000 h e l l o
0000005
$ wc a
0 1 5 a
但是,如果我们使用echo 之类的内容编写,则会附加一个尾随的新行:
$ echo "hello" > a
$ cat a | hexdump -c
0000000 h e l l o \n
0000006
$ wc a
1 1 6 a
【讨论】:
\n 是第一行的最后一个字符。
wc 计算文件包含多少新行。这就是为什么我的第一个示例在第一列中显示 0。
od 查看文件的确切内容。例如od -c sample.txt.