vi/vim 編輯器如何去掉行終止符(line terminator)

WBOY
發布: 2023-03-02 13:06:01
原創
3018 人瀏覽過

<code>vim hello.txt
# 输入hello
# :wq 保存退出
cat hello.txt</code>
登入後複製
登入後複製

結果是這樣的:
vi/vim 編輯器如何去掉行終止符(line terminator)

然而:

<code>echo -n "hello" > hello.txt
cat hello.txt</code>
登入後複製
登入後複製

結果是這樣的:
vi/vim 編輯器如何去掉行終止符(line terminator)
沒錯, 此時的cat有終止標記, 且file會顯示with no line terminators

但此時用vim一編輯, 再保存, 又有了行終止符.

使用nano可以看到這個換行符, 但是我不會也不常用nano啊(別見笑)

-- 以下內容與主題無關, 只是描述下事故背景 --

這個問題導致我在nginx使用ssi時,多出了個換行符,以至於樣式和js的地址拼接換行, 多數瀏覽器無法正常加載.

<code><link type="text/css" href="<!--#include virtual='/inc/cdn.inc'-->/public/index.css?v=<!--#include virtual='/inc/version.inc" /></code>
登入後複製
登入後複製

file: cdn.inc, 因手動vim編輯了該文件, 導致網站多數用戶樣式掛了卻未發覺(多出了換行符)

<code>mydomain.com</code>
登入後複製
登入後複製

file: version.inc, 上線時腳本會更新該檔案, 用於清瀏覽器快取

<code>1477452280307</code>
登入後複製
登入後複製

回覆內容:

<code>vim hello.txt
# 输入hello
# :wq 保存退出
cat hello.txt</code>
登入後複製
登入後複製

結果是這樣的:
vi/vim 編輯器如何去掉行終止符(line terminator)

然而:

<code>echo -n "hello" > hello.txt
cat hello.txt</code>
登入後複製
登入後複製

結果是這樣的:
vi/vim 編輯器如何去掉行終止符(line terminator)
沒錯, 此時的cat有終止標記, 且file會顯示with no line terminators

但此時用vim一編輯, 再保存, 又有了行終止符.

使用nano可以看到這個換行符, 但是我不會也不常用nano啊(別見笑)

-- 以下內容與主題無關, 只是描述下事故背景 --

這個問題導致我在nginx使用ssi時,多出了個換行符,以至於樣式和js的地址拼接換行, 多數瀏覽器無法正常加載.

<code><link type="text/css" href="<!--#include virtual='/inc/cdn.inc'-->/public/index.css?v=<!--#include virtual='/inc/version.inc" /></code>
登入後複製
登入後複製

file: cdn.inc, 因手動vim編輯了該文件, 導致網站多數用戶樣式掛了卻未發覺(多出了換行符)

<code>mydomain.com</code>
登入後複製
登入後複製

file: version.inc, 上線時腳本會更新該檔案, 用於清瀏覽器快取

<code>1477452280307</code>
登入後複製
登入後複製

<code>:set noendofline binary
:w</code>
登入後複製

查看一下set ff是否設定為了dos

linux的話,通常都是set ff=unix的配置吧?

----- 編輯----
實驗了一下,跟ff好像沒關係-。 -

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!