什么是 ^M 以及它是如何生成的?
What is ^M and how is it generated?
最近,有人(正在使用 Windows10)问我他的 VSCode 的远程 (ssh) 连接不可用。经过大量检查,我发现他的 ~/.ssh/authorized_keys
以 "^M" 结尾(在 Vim 中),删除该符号解决了他的问题。
到modify/remove“^M”很容易。但是这次我想弄清楚什么是“^M”,它是如何产生的?了解它是如何生成的将有助于人们避免生成“^M”和相关问题。
^M
是 Vim 的 ASCII 13 表示(M 是字母表中的第 13 个字母),回车 return。 ssh
假定该文件将使用 Unix 行结尾,因此它将 DOS 文件中 CR/LF 对的 CR 视为常规字符,而不是将其视为行终止符而忽略。删除 ^M 实质上会将文件从 DOS 文本文件转换为 ssh
期望的 POSIX 文本文件。
最近,有人(正在使用 Windows10)问我他的 VSCode 的远程 (ssh) 连接不可用。经过大量检查,我发现他的 ~/.ssh/authorized_keys
以 "^M" 结尾(在 Vim 中),删除该符号解决了他的问题。
到modify/remove“^M”很容易。但是这次我想弄清楚什么是“^M”,它是如何产生的?了解它是如何生成的将有助于人们避免生成“^M”和相关问题。
^M
是 Vim 的 ASCII 13 表示(M 是字母表中的第 13 个字母),回车 return。 ssh
假定该文件将使用 Unix 行结尾,因此它将 DOS 文件中 CR/LF 对的 CR 视为常规字符,而不是将其视为行终止符而忽略。删除 ^M 实质上会将文件从 DOS 文本文件转换为 ssh
期望的 POSIX 文本文件。