當前位置:首頁 » 操作系統 » linux回車換行

linux回車換行

發布時間: 2023-08-31 15:40:57

『壹』 linux下C語言如何向串口寫一個帶回車換行的

換行,一般使用回車+換行,「\r\n」 到底是用"\n",還是"\r\n"要看場合,早期的程序"\n"用得比較多,比如dos下面的程序,window下的「\r\n」比較多,具體我也記不祝包括:文本文件,edit控制項的多行輸入等

『貳』 在LINUX命令行中要怎麼換行

就能換行 並且不影響你繼續寫命令,

出現>可以繼續輸入命令。

例如:apache源代碼安裝,

./configure --prefix=/export/apache

--enable-moles=most

--enable-mods-shared=all

--enable-so

--enable-rewrite

『叄』 Linux /r /n

CR :Carriage Return,對應ASCII中轉義字元\r ,0x0D(asc碼是13) 指的是「回車」   \r是把游標置於本行行首

LF :Linefeed,對應ASCII中轉義字元\n ,0x0A(asc碼是10) 指的是「換行」    \n是把游標置於下一行的同一列

CRLF:Carriage Return & Linefeed,\r\n , 0x0D + 0x0A ,指的是回車換行    \r\n把游標置於下一行行首 

^M的原因 : ^M 注意要用 Ctrl + V Ctrl + M 來輸入

Dos、Windows 格式的文件,用 0D 0A (CR+LF)作為換行符,而Unix 的則是以0A(LF) 作為換行符.所以dos 底下的文本文件到了unix的話,換行符就會多出來一個 0D(CR) 顯示為 ^M,在linux中vim中無法顯示\r

因為ascii中對應的不是linux中的標准acsii字元,其實其對應的ASCII碼十進制形式是: 13 (無顯示形式);對應的八進制形式 15 (顯示為^M)從二進制層面來理解,即可以刪除換行符前面對應的字元位元組(我瞎編的,應該對的),在字元層面直接刪除^M這個位元組即可

方法1:

在命令模式下:輸入:%s/^M//g 然後,回車即可替換

注,其中」^M」的輸入,分別是「Ctrl+v」、「Ctrl+M」鍵生成的

方法2:

使用vi打開文本文件

vi dos.txt

命令模式下輸入

:set fileformat=unix

:w

方法3:

使用sed 工具

sed 』s/^M//』 filename > tmp_filename

方法4:

既然window下的回車符多了『\r』,那麼當然通過刪除『\r』 ,也可以實現:

tr -d 『\r』

或者:

sed -i 's/\r//' startup.sh

window下默認是 \r\n

linux下是\n

unix下是\r

  現在, 我們看看本文開頭部分的問題。 假設有一個linux下的unix.txt文件,  那麼, 它在文件中的換行標志是:\n, 現在把unix.txt拷貝靠Windows上, 那好啊, Windows那雙犀利的眼神彷彿是在對unix.txt文件說: 別跟我整什麼\n, 我只認識文件中的\r\n, 如果你這個unix.txt文件裡面有\r\n, 那我就認為是換行符, 否則, 我不認你。 如此一來, Windows壓根就找不到unix.txt中的\r\n, 所以, 對於Windows而言, 壓根就沒有發現unix.txt有任何換行, 所以, 我們從Windows上看到的unix.txt文件顯示在一行裡面。 

『肆』 Windows和Linux換行符的區別

'\r'是回車,前者使游標到行首,(carriage return)
'\n'是換行,後者使游標下移一格,(line feed)

\r 是回車,return
\n 是換行,newline
對於換行這個動作,unix下一般只有一個0x0A表示換行("\n"),windows下一般都是0x0D和0x0A兩個字元("\r\n"),蘋果機(MAC OS系統)則採用回車符CR表示下一行(\r)

Unix系統里,每行結尾只有「<換行>」,即「\n」;
Windows系統裡面,每行結尾是「<回車><換行>」,即「\r\n」;
Mac系統里,每行結尾是「<回車>」,即「\r」。
一個直接後果是,Unix/Mac系統下的文件在Windows里打開的話,所有文字會變成一行;而Windows里的文件在Unix下打開的話,在每行的結尾會多車一個^M字元。
Dos和windows採用回車+換行CR/LF表示下一行,即^M$($不是換行符的表示,換行符沒有表示出來,$是文本結束EOF的表示)
而UNIX/Linux採用換行符LF表示下一行,即\n
蘋果機(MAC OS系統)則採用回車符CR表示下一行,即\r

CR用符號'\r'表示, 十進制ASCII代碼是13, 十六進制代碼為0x0D;
LF使用'\n'符號表示, ASCII代碼是10, 十六制為0x0A. 所以Windows平台上換行在文本文件中是使用 0d 0a 兩個位元組表示, 而UNIX和蘋果平台上換行則是使用0a或0d一個位元組表示.

由於dos風格的換行使用\r\n,把這樣的文件上傳到unix,有些版本的vi不能識別\r,所以vi顯示時在行尾會出現^M出來,但是有些就能識別\r\n,正常顯示回車換行。

『伍』 Linux 終端 如何換行 \n

echo -e 'zero\nzo\nzoo'
-e 若字元串中出現以下字元,則特別加以處理,而不會將它當成一般
文字輸出:
\a 發出警告聲;
\b 刪除前一個字元;
\c 最後不加上換行符號;
\f 換行但游標仍舊停留在原來的位置;
\n 換行且游標移至行首;
\r 游標移至行首,但不換行;
\t 插入tab;
\v 與\f相同;
\\ 插入\字元;
\nnn 插入nnn(八進制)所代表的ASCII字元;

『陸』 windows和linux,Mac系統換行規則的區別

計算機還沒有出現之前,有一種叫做電傳打字機(Teletype Model 33)的玩意,每秒鍾可以打10個字元。但是它有一個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個字元。要是在這0.2秒裡面,又有新的字元傳過來,那麼這個字元將丟失。

於是,研製人員想了個辦法解決這個問題,就是在每行後面加兩個表示結束的字元。一個叫做"回車",告訴打字機把列印頭定位在左邊界;另一個叫做"換行",告訴打字機把紙向下移一行。
這就是"換行"和"回車"的來歷,從它們的英語名字上也可以看出一二。

後來,計算機發明了,這兩個概念也就被般到了計算機上。那時,存儲器很貴,一些科學家認為在每行結尾加兩個字元太浪費了,加一個就可以。於是,就出現了分歧。

Unix系統里,每行結尾只有"<換行>",即"\n";Windows系統裡面,每行結尾是"<回車><換行>",即"\r\n";Mac系統里,每行結尾是"<回車>"。

熱點內容
如何加入安卓代理 發布:2025-02-01 01:51:40 瀏覽:2
我的世界手游伺服器刷鑽石教程 發布:2025-02-01 01:48:13 瀏覽:773
sqlifthen男女 發布:2025-02-01 01:44:59 瀏覽:690
幻靈和安卓哪個互通 發布:2025-02-01 01:43:33 瀏覽:648
電腦配置夠但為什麼打lol掉幀 發布:2025-02-01 01:37:08 瀏覽:316
21款朗逸哪個配置比較劃算 發布:2025-02-01 01:35:32 瀏覽:976
建築動畫片腳本 發布:2025-02-01 01:35:21 瀏覽:469
管家婆如何用阿里雲伺服器 發布:2025-02-01 01:29:09 瀏覽:649
解壓耳放 發布:2025-02-01 01:20:18 瀏覽:176
cars演算法 發布:2025-02-01 01:02:26 瀏覽:177