如果我执行以下命令:
$ cat picture.jpg > copy1.jpg
Run Code Online (Sandbox Code Playgroud)
和
$ cat -v picture.jpg > copy2.jpg
Run Code Online (Sandbox Code Playgroud)
copy1.jpg
是 的完美副本picture.jpg
,但copy2.jpg
比picture.jpg
.
我认为这是因为copy2.jpg
已经将猫认为的每个行尾都替换为 a ^M
,并且每个^M
都比行尾大。这样对吗?
如果那样做cat copy2.jpg
,我发现没有^M
in 的实例copy2.jpg
。
这里发生了什么?如果 cat>
的输出可能与其输入不同,那么可以依靠 cat 完美地使用 连接文件吗?
这不仅仅是^M
. 每个带有不可打印字符的字节(无论在当前语言环境中意味着什么)都将在cat -v
.
如果您使用cat
连接文件,则需要避免修改输出的每个选项:-b
和-n
(数字行)、-E
(标记行结尾为$
)、-s
(抑制重复的空行)-v
和-T
(使用可打印的显示不可打印的字符)人物)。
归档时间: |
|
查看次数: |
250 次 |
最近记录: |