在 Solaris 上,如果您在 vi 中打开一个带有 Windows 行结尾的文件,这会在每一行的末尾显示为 ^M。
在 Linux 上,vi 更聪明,可以理解 Windows 文件格式,并且不显示 ^M。
是否有设置可以使 Linux vi 在这方面的行为与 Solaris 相同?
对我们来说,一个常见的问题是从 (Windows) 开发箱中复制一个 shell 脚本并忘记使用 dos2unix,然后在它不能正常工作时感到困惑。在 Solaris 上,只要您 vi 文件,问题就很明显,但在 Linux 上则不然。
谢谢。
Gar*_*ett 10
:set ffs=unix在启动 vi(或在 vimrc 中设置为默认值)时尝试,它应该将所有 CR 字符显示为^M.
vi 会根据是否遇到仅以 LF 结尾或以 CR/LF 结尾的行自动猜测要使用的格式。