欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

vi/vim 编辑器如何去掉行终止符(line terminator)

程序员文章站 2022-04-02 10:55:05
...
vim hello.txt
# 输入hello
# :wq 保存退出
cat hello.txt

结果是这样的:
vi/vim 编辑器如何去掉行终止符(line terminator)

然而:

echo -n "hello" > hello.txt
cat hello.txt

结果是这样的:
vi/vim 编辑器如何去掉行终止符(line terminator)
没错, 此时的cat有终止标记, 且file会显示with no line terminators

但此时用vim一编辑, 再保存, 又有了行终止符.

使用nano可以看到这个换行符, 但是我不会也不常用nano啊(别见笑)

-- 以下内容与主题无关, 只是描述下事故背景 --

这个问题导致我在nginx使用ssi时,多出了个换行符,以至于样式和js的地址拼接换行, 多数浏览器无法正常加载.

file: cdn.inc, 因手动vim编辑了该文件, 导致网站多数用户样式挂了却未发觉(多出了换行符)

mydomain.com

file: version.inc, 上线时脚本会更新该文件, 用于清浏览器缓存

1477452280307

回复内容:

vim hello.txt
# 输入hello
# :wq 保存退出
cat hello.txt

结果是这样的:
vi/vim 编辑器如何去掉行终止符(line terminator)

然而:

echo -n "hello" > hello.txt
cat hello.txt

结果是这样的:
vi/vim 编辑器如何去掉行终止符(line terminator)
没错, 此时的cat有终止标记, 且file会显示with no line terminators

但此时用vim一编辑, 再保存, 又有了行终止符.

使用nano可以看到这个换行符, 但是我不会也不常用nano啊(别见笑)

-- 以下内容与主题无关, 只是描述下事故背景 --

这个问题导致我在nginx使用ssi时,多出了个换行符,以至于样式和js的地址拼接换行, 多数浏览器无法正常加载.

file: cdn.inc, 因手动vim编辑了该文件, 导致网站多数用户样式挂了却未发觉(多出了换行符)

mydomain.com

file: version.inc, 上线时脚本会更新该文件, 用于清浏览器缓存

1477452280307

:set noendofline binary
:w

查看一下set ff是否设置为了dos

linux的话,一般都是set ff=unix的配置吧?

----- 编辑----
实验了一下,跟ff好像没关系-。-