在Linux系统中,换行符(Line Ending)使用 LF(Line Feed) 字符表示,对应的ASCII码是 \n(即 0x0A)。这是Linux/Unix系统的标准换行符。
Linux/Unix:\n(LF)
Hello\nWorldWindows:\r\n(CRLF)
\r,ASCII 0x0D) + 换行(\n)。Hello\r\nWorld经典Mac(OS X之前):\r(CR)
\n,与Linux一致。文件换行符转换:
dos2unix(Windows转Linux)或 unix2dos(Linux转Windows)工具:bash
dos2unix filename # 将CRLF转为LF
unix2dos filename # 将LF转为CRLFsed 命令删除 \r:bash
sed -i 's/\r//g' filenameGit自动处理换行符:
在Git中设置核心配置,避免跨平台协作问题:
git config --global core.autocrlf input # Linux/macOS用户(提交时转为LF)
git config --global core.autocrlf true # Windows用户(检出时转为CRLF,提交时转为LF)
文本编辑器显示:
vim
:set ff?
输出可能是 fileformat=unix(LF)、dos(CRLF)或 mac(CR)。\r,可能导致错误(如 ^M 或 bad interpreter)。通过工具或配置统一换行符,可以避免这些问题。