vim 把dos格式的文本转换成unix 格式,要不然执行脚本可能会报错!

在 vim 中,set ff=unix 命令的详细解释如下:ff 是 fileformat 的缩写,用于设置文件的换行符格式。vim 支持三种文件格式:unix: 使用 LF(Line Feed,\n)作为换行符dos: 使用 CRLF(Carriage...

在 vim 中,set ff=unix 命令的详细解释如下:ff 是 fileformat 的缩写,用于设置文件的换行符格式。vim 支持三种文件格式:unix: 使用 LF(Line Feed,\n)作为换行符dos: 使用 CRLF(Carriage Return + Line Feed,\r\n)作为换行符mac: 使用 CR(Carriage Return,\r)作为换行符查看当前文件格式的方法:

:set ff?
完整的文件格式转换步骤:
:set ff=unix    # 设置为 unix 格式
:wq             # 保存并退出
为什么要使用 unix 格式: Unix/Linux 系统默认使用 LF 换行符 Windows 默认使用 CRLF 换行符 在 Linux 系统中执行包含 CRLF 的脚本可能会出现 ^M: bad interpreter 错误 Unix 格式的文件在 Windows 中也能正常运行 在 vim 中可以看到文件格式:
:set ff?         # 显示当前文件格式
:set ffs?        # 显示vim支持的文件格式列表
也可以在打开文件时就指定格式:

在 .vimrc 配置文件中可以设置默认格式:
set fileformat=unix
set fileformats=unix,dos

这就是为什么在我们的脚本出现问题时,使用 set ff=unix 可以解决的原因 - 它将文件的换行符从 Windows 格式(CRLF)转换为 Unix 格式(LF),使脚本能够在 Linux 系统中正确执行。

  • 发表于 2025-01-14 16:24
  • 阅读 ( 34 )

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
shitian
shitian

662 篇文章

作家榜 »

  1. shitian 662 文章
  2. 石天 437 文章
  3. 每天惠23 33 文章
  4. 小A 29 文章