色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux與Windows文件換行符的區(qū)別

xCb1_yikoulinux ? 來(lái)源:CSDN技術(shù)社區(qū) ? 作者:花神廟碼農(nóng) ? 2022-06-27 15:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

  • 當(dāng)一個(gè)文件在Windows和Linux上交替操作后,經(jīng)常遇到一些莫名其妙的問(wèn)題,如shell腳本無(wú)法執(zhí)行,找不到shell腳本等問(wèn)題,本文謹(jǐn)就這一問(wèn)題做一總結(jié),供各位參考;
  • 本文作者: 花神廟碼農(nóng)
  • 博客地址,https://blog.csdn.net/qxhgd。

格式差異

  • 換行符是行尾 (EOL),是一個(gè)特殊的字符或字符序列,表示一行文本的結(jié)尾和新行的開(kāi)頭;
  • 表示換行符的實(shí)際代碼因操作系統(tǒng)而異:-- Microsoft Windows,DOS(MS-DOS,PC DOS等)使用CR + LF;-- Unix和類(lèi)Unix系統(tǒng)使用,包括Linux,OS X,F(xiàn)reeBSD等使用LF;-- MAC系統(tǒng)里,使用CR;
  • CR即ASCII碼的0x0D( ),LF為ASCII碼的0x0A( ),DOS下使用( ),類(lèi)Unix系統(tǒng)下使用( ),DOS系統(tǒng)下的' '在類(lèi)Unix系統(tǒng)下會(huì)被顯示為 ^M。

后文僅以test-dos.sh文件為例來(lái)說(shuō)明,具體內(nèi)容如下:

#!/bin/bash
echo"HelloWorld!"

格式影響

直觀影響

  • Unix/Mac系統(tǒng)下的文件在Windows里打開(kāi)的話,所有文字會(huì)變成一行(由于Windows下編輯器的處理,這種情況一般不會(huì)發(fā)生);
  • 而Windows里的文件在Unix/Mac下打開(kāi)的話,在每行的結(jié)尾可能會(huì)多出一個(gè)^M符號(hào);

功能影響

  • 在windows上編寫(xiě)的shell、python等腳本在Linux上?法正常的執(zhí)?,會(huì)有 ^M 相關(guān)提?:
[qxhgd@localhostcrlf]$./test-dos.sh
-bash:./test.sh:/bin/bash^M:badinterpreter:Nosuchfileordirectory
  • 如果在make編譯的時(shí)候,執(zhí)行mksh(一個(gè)shell文件)可能會(huì)有類(lèi)似下面的提示:
make[3]:./mksh:Commandnotfound

格式查看

Windows下查看

  • 利用編輯器,如Visual Studio Code、UltraEdit、Notepad2等軟件,如在狀態(tài)欄顯示為CR+LF則為Windows格式,如果顯示為L(zhǎng)F則為L(zhǎng)inux格式:3281657a-f399-11ec-ba43-dac502259ad0.png328bd0fa-f399-11ec-ba43-dac502259ad0.png
  • 利用支持?jǐn)U展搜索的編輯器,如Notepad++,查找 :32954cb6-f399-11ec-ba43-dac502259ad0.png

Linux下查看

  • cat命令顯示^M:
[qxhgd@localhostcrlf]$cat-vtest-dos.sh
#!/bin/bash^M
echo"HelloWorld!"^M

顯示Tab:

[qxhgd@localhostcrlf]$cat-Ttest-dos.sh
#!/bin/bash
^Iecho"HelloWorld!"
  • od命令od可以單獨(dú)使用:
[qxhgd@localhostcrlf]$od-ctest-dos.sh
0000000#!/bin/bash

ech
0000020o"HelloWorld!
0000040"
0000041

也可以和cat配合使用:

cattest-dos.sh|od-c
  • hexdump命令
[qxhgd@localhostcrlf]$hexdump-ctest-dos.sh
0000000#!/bin/bash

ech
0000010o"HelloWorld!
0000020"
0000021
  • vim

狀態(tài)欄下會(huì)顯示:

"test-dos.sh" [noeol][dos] 2L, 33B

命令模式下執(zhí)行set ff:

fileformat=dos
  • gedit

-- 首先使用gedit打開(kāi)文件:

[qxhgd@localhostcrlf]$gedittest-dos.sh

-- 搜索 ,如果搜索到了就表示是DOS格式:32a28c96-f399-11ec-ba43-dac502259ad0.png

格式修改

Windows下

  • 可以利用編輯器修改,如Visual Studio Code,點(diǎn)擊狀態(tài)欄右下方的CRLF,選擇“行尾序列”可修改為L(zhǎng)F的格式;

  • 有的編輯器,如Notepad2,有Line Endings可供選擇:32b0a4f2-f399-11ec-ba43-dac502259ad0.png

  • 利用支持?jǐn)U展搜索的編輯器,如Notepad++,可將 替換掉:32bf8800-f399-11ec-ba43-dac502259ad0.png

Linux下

利用特殊工具轉(zhuǎn)換

  • vimvim命令模式下,執(zhí)行set ff=unix或set fileformat=unix即可將DOS格式轉(zhuǎn)換為unix格式;
  • dos2unix需要額外用命令安裝,一般的Linux系統(tǒng)不帶的;unix2dos與dos2unix作用正相反。
[qxhgd@localhostcrlf]$dos2unixtest-dos.sh
dos2unix:convertingfiletest-dos.shtoUnixformat...
[qxhgd@localhostcrlf]$dos2unix-ntest-dos.shtest-unix.sh
dos2unix:convertingfiletest-dos.shtofiletest-unix.shinUnixformat...
  • tofrodos這一組一共兩個(gè)命令,todos和fromdos,fromdos用來(lái)將dos轉(zhuǎn)換成unix格式,todos是用于將unix轉(zhuǎn)換成dos格式的,使用例子如下:
[qxhgd@localhostcrlf]$fromdostest-dos.sh

利用文本處理工具

  • sed

-- 轉(zhuǎn)換一個(gè)文件:

sed‘s/^M//’test-dos.sh>test-unix.sh

-- 轉(zhuǎn)換多個(gè)文件:

find./-typefprint0|xargs-0sed-i's/^M$//'
  • vi

-- 1、vi test-dos.sh-- 2、:%s/^M//g或:%s/ //g
-- 3、esc退出 :wq保存退出

其中^M 必須是同時(shí)按 Ctrl+V+M(按住Ctrl鍵,然后依次V、M鍵)或依次按Ctrl + V然后Ctrl + M,表示回車(chē)。

  • tr
tr-d"15"test-dos.sh
cattest-dos.sh|tr-d‘/r'>test-unix.sh
tr-d'
'test-unix.sh
  • perl
cattest-dos.sh|perl-pe‘~s/
//g’>test-unix.sh
perl-p-e's/
//g'test-dos.sh>test-unix.sh
perl-pi-e's/
/
/g'test-dos.sh

原文標(biāo)題:一文搞清UNIX/Linux與Windows文件換行符格式差異

文章出處:【微信公眾號(hào):一口Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11508

    瀏覽量

    213606
  • WINDOWS
    +關(guān)注

    關(guān)注

    4

    文章

    3611

    瀏覽量

    91339
  • 格式
    +關(guān)注

    關(guān)注

    0

    文章

    23

    瀏覽量

    17055
  • UNIX
    +關(guān)注

    關(guān)注

    0

    文章

    296

    瀏覽量

    42310

原文標(biāo)題:一文搞清UNIX/Linux與Windows文件換行符格式差異

文章出處:【微信號(hào):yikoulinux,微信公眾號(hào):一口Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    一文搞清UNIXLinux與Windows文件換行符格式差異

    當(dāng)一個(gè)文件WindowsLinux 上交替操作后,經(jīng)常遇到一些莫名其妙的問(wèn)題,如 shell 腳本無(wú)法執(zhí)行,找不到 shell 腳本等問(wèn)題,本文謹(jǐn)就這一問(wèn)題做一總結(jié),供各位參考;
    發(fā)表于 11-28 11:31 ?1829次閱讀

    esp32貌似會(huì)對(duì)換行符(n,0x0a)進(jìn)行替換,為什么?

    esp32貌似會(huì)對(duì)換行符(n,0x0a)進(jìn)行替換。比如我用fwrite發(fā)送數(shù)據(jù): const char data[] = {0x0a};fwrite(data, 1, sizeof(data
    發(fā)表于 06-26 07:36

    一個(gè)簡(jiǎn)單卻不能忽視的換行符問(wèn)題

    如圖問(wèn)題:請(qǐng)問(wèn)第15行的換行符起什么作用?為什么有它沒(méi)有它結(jié)果差別那么大?
    發(fā)表于 01-20 12:35

    labview 如何處理Return鍵按下在輸入框有換行符存在?

    戶名和密碼輸入框還有換行符在,這樣帳號(hào)密碼就check不正確了,我的處理方法是把換行符都替換成空字符串,但是感覺(jué)在輸入框有換行符在很別扭,請(qǐng)問(wèn)labview有沒(méi)用像C#一樣有e.handled=ture這樣的類(lèi)似用法不處理該按鍵
    發(fā)表于 07-04 22:58

    字符串中回車(chē)換行符的長(zhǎng)度問(wèn)題

    各位大神,我發(fā)現(xiàn)我的字符串控件中,輸入回車(chē)換行符時(shí),長(zhǎng)度只有一個(gè)字節(jié),而不是兩個(gè)字節(jié),然后我將我輸入的回車(chē)換行符通過(guò)串口發(fā)送出去,串口調(diào)試助手那邊收到的并不實(shí)現(xiàn)換行功能。請(qǐng)問(wèn)各位大神,這個(gè)該怎么搞?是不是字符串控件哪里需要設(shè)置一
    發(fā)表于 05-12 12:07

    Labview怎么刪除數(shù)組元素內(nèi)的換行符,請(qǐng)各位大神分享。謝謝了!

    Labview怎么刪除數(shù)組元素內(nèi)的換行符,已經(jīng)搞定了,謝謝!
    發(fā)表于 01-21 11:00

    MINI板使用WIFI模塊例程發(fā)現(xiàn)回車(chē)換行符不見(jiàn)了

    1.使用WIFI模塊的例程,在發(fā)送測(cè)試數(shù)據(jù)給電腦上的網(wǎng)絡(luò)調(diào)試助手,總是會(huì)有 0D 0A這樣的換行命令出現(xiàn),后來(lái)注釋了LCD的顯示函數(shù)Show_Str(),發(fā)現(xiàn)回車(chē)換行符不見(jiàn)了,而且是有一個(gè)
    發(fā)表于 02-13 00:53

    linux文件的fgets與gets操作

    從標(biāo)準(zhǔn)輸入里讀取字符串。從標(biāo)準(zhǔn)輸入里讀出字符串并將其存儲(chǔ)在字符數(shù)組str里,直到遇到換行符"\n"或者文件終止EOF如果遇到換行符"\n",從標(biāo)準(zhǔn)輸入到字符數(shù)組str的復(fù)制操作終止。
    發(fā)表于 07-11 08:39

    這段代碼意思是不是當(dāng)換行符輸入時(shí)循環(huán)跳過(guò)?

    大家好,我想問(wèn)大家while (getchar()!='\n') continue;這段代碼意思是不是當(dāng)換行符輸入時(shí)循環(huán)跳過(guò)啊
    發(fā)表于 05-22 12:45

    Labview串口時(shí)候數(shù)據(jù)中的0x0A與換行符沖突怎么解決?

    串口數(shù)據(jù)傳輸時(shí)候,含有0x0A與換行符沖突,如果關(guān)閉終止,那樣就無(wú)法識(shí)別串口數(shù)據(jù)結(jié)束,無(wú)法識(shí)別換行了,請(qǐng)問(wèn)下大家如何解決?
    發(fā)表于 12-06 21:33

    請(qǐng)問(wèn)一下Java中平臺(tái)無(wú)關(guān)的換行符是什么?

    Java中平臺(tái)無(wú)關(guān)的換行符是?
    發(fā)表于 06-01 11:33

    WCHISPTool對(duì)于Hex文件換行符支持哪幾種?

    我這邊需要使用代碼修改模版HEX文件里的數(shù)據(jù),以生成不同版本,不同配置的HEX文件。但是工具就回報(bào)”錯(cuò)誤的文件#3“。搞了好幾個(gè)小時(shí)才發(fā)現(xiàn),WCHISPTool只支持windows
    發(fā)表于 08-22 07:10

    從git拉取代碼到Windows系統(tǒng)中出錯(cuò)的原因及其解決辦法

    換行符Windows 一直使用的 CRLF(即,回車(chē) CR和換行 LF)作為換行符。將 Windows 系統(tǒng)下的
    發(fā)表于 09-29 12:01

    Linux文件文件描述概述

    6.2 Linux文件文件描述概述 在Linux中對(duì)目錄和設(shè)備的操作都等同于文件的操作,因
    發(fā)表于 10-18 14:35 ?0次下載

    python輸出換行符\n怎么用

    在Python中,要輸出換行符"n",可以使用print函數(shù)。print函數(shù)可以接受多個(gè)參數(shù),并將它們打印到控制臺(tái)。 下面是一個(gè)使用print函數(shù)輸出換行符的簡(jiǎn)單示例: print
    的頭像 發(fā)表于 11-22 10:48 ?2856次閱讀
    主站蜘蛛池模板: 怡红院美国分院一区二区 | 美女岔开腿露出粉嫩花苞 | 国产毛片A级久久久不卡精品 | 小箩莉奶水四溅小说 | gogogo免费视频观看 | 国产免国产免费 | 在线观看免费国产成人软件 | 国产欧美一区二区精品仙草咪 | 久久久WWW免费人成精品 | 小草高清视频免费直播 | 国产国产成年在线视频区 | 男女久久久国产一区二区三区 | 成人毛片18岁女人毛片免费看 | 欧美激情视频一区 | 妺妺窝人体色WWW偷窥女厕 | 国产AV午夜精品一区二区入口 | 国产看黄网站又黄又爽又色 | 亚洲 自拍 偷拍 另类综合图区 | 97超碰97资源在线观看视频 | 亚洲中久无码永久在线 | 精品人妻一区二区三区视频53 | GAY2022空少被体育生暴菊 | 国产免费播放一区二区三区 | 人成午夜免费视频 | 老女人与小伙子露脸对白 | 伊人久久大香线蕉综合影 | 精品国产影院 | 精品伊人久久 | 91成品视频 | 簧片免费观看 | 成片免费观看视频在线网 | 小寡妇好紧进去了好大看视频 | 99久久国产综合精品网成人影院 | 韩国演艺圈qvod | 午夜在线视频国产极品片 | 国产成人综合视频 | 爆乳啪啪无码成人二区亚洲欧美 | 99久久免费国内精品 | 性一交一乱一色一视频 | 国产亚洲精品久久777777 | 中文字幕不卡免费高清视频 |

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品