为什么粘贴命令添加换行符?

背风处

我有2个文件:dt我希望能够合并这些文件,以便文件t的第一行后面是一个制表符,然后是d的第一行。对于较短的行,paste t d似乎工作正常。

$ cat d t
Highly reactive metals in group 1A of the periodic table.
Fairly reactive metals in group 2A of the periodic table.
alkali metals
alkaline earth metals
$ paste d t
Highly reactive metals in group 1A of the periodic table.   alkali metals
Fairly reactive metals in group 2A of the periodic table.   alkaline earth metals
$ paste t d
alkali mHighly reactive metals in group 1A of the periodic table.
alkalineFairly reactive metals in group 2A of the periodic table.

试图粘贴完整的句子似乎很奇怪。如上所示,这些术语被缩减为前8个字符。

$ paste t d > temp
$ gedit temp &
$ vim temp

打开gedit会显示每个学期后的换行符。Vim显示了这一点:

alkali metals^M Highly reactive metals in group 1A of the periodic table.
alkaline earth metals^M Fairly reactive metals in group 2A of the periodic table.

好吧,这似乎很容易修复。:%s/^V^M//g删除所有回车,一切都正确显示。但是这些回车首先是如何到达那里的呢?

尽管我的问题确实涉及Windows文本文件中的回车符,使事情在类似Unix的环境中表现异常,但这并不是该问题的重复问题相似,但表现形式却大不相同。我花了大约一个小时才弄清楚回车甚至是罪魁祸首,因为我无法通过网络搜索找到足够类似的问题的实例。这就是为什么我自己解决此问题后将其发布的原因。

背风处

该文件的源文件是使用Windows 8上的记事本创建的,并由Ubuntu 13.04复制到我的主目录中。d的源代码是在Ubuntu的gedit中创建的。因此,回车符一直保存在文件中。似乎在不同的操作系统之间来回移动文件经常会导致类似的问题。

换行符差异

转换行尾

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么在粘贴多行命令时tmux不插入换行符?

尝试向粘贴命令添加换行符

为什么`HTMLelement.innerText`添加换行符(\ n)?

添加换行符会破坏JSX。为什么?

为什么在字符串末尾添加换行符?

为什么IDLE在我的代码后添加换行符?

粘贴多光标复制/粘贴,而无需在换行符中添加换行符

为什么$(cat)删除换行符

为什么换行符被 concat 删除

为什么换行符等于 -1?

为什么我有换行符?

VSCode复制并粘贴1行,而不添加换行符

Vim复制粘贴添加换行符

为什么将命令扩展中嵌入的换行符替换为空格?

为什么Make中的`shell`命令会删除换行符?

为什么在这个 apt install 命令上有反斜杠 `\` 换行符?

为什么使用命令替换时换行符会丢失?

为什么我的 JTextArea 没有从我的字符串中添加换行符?

为什么读取时使用默认的IFS和单个变量添加换行符?

Vim为什么要添加换行符?这是惯例吗?

为什么换行符在添加ScrollView后停止工作?

为什么bash此处字符串会添加结尾的换行符?

jQuery append()添加引号和换行符,我不知道为什么

为什么这个 vscode 用户代码段要添加一个额外的换行符?

为什么我的“ +”运算符被视为换行符?

在Django管理命令中添加了虚假的换行符

命令替换是否要添加换行符?

将换行符添加到Grep命令

为什么Windows的换行符比Unix的换行符大?