久久96国产精品久久久-久久发布国产伦子伦精品-久久精品国产精品青草-久久天天躁夜夜躁狠狠85麻豆

技術員聯盟提供win764位系統下載,win10,win7,xp,裝機純凈版,64位旗艦版,綠色軟件,免費軟件下載基地!

當前位置:主頁 > 教程 > 服務器類 >

刪除DOS結尾符的方法

來源:技術員聯盟┆發布時間:2019-01-10 00:15┆點擊:

有時候我們需要去掉dos的結尾符,那么就可以參考下面的方法

 

DOS結尾符:CRLF Carriage-Return Line-Feed  

# 檢查文件是否含有CRLF 
1. file dosfile 
   返回CRLF 

2. cat -a dosfile 
   返回^M   

# 刪除CRLF 
1. vim       
    :set fileformat=unix  # :set ff=unix 
    :w   

    :s/^M//gc  # Linux: Ctrl+V+M Enter, AIX: Ctrl+V Ctrl+^ Enter 
    :w 

2. dos2uninx dosfile     

3. col -bx  dosfile 

4. sed -e 's/^M//' dosfile 

5. tr                  
tr -s "rn" "n" dosfile 
tr -d "r" dosfile  

6. cat dosfile | perl -pe '~s//r//g' 

用dos的copy命令合并文件(如何消除結尾的1A結束符) .

最近公司Tenfore FeedHandler項目分割存儲了大量的RawData文件。由于TenforeRawData非常大, 因此存儲策略是每一小時存儲一個rawdata文件。但在進行數據分析回放時,又希望將它們合并成一個大文件。剛開始是想到網上找一個第三方合并工具,后 一想,dos的copy命令不是可以合并文件嗎? 馬上試一下!
例如,希望將a.dat和b.dat合并成c.dat。其中,a.dat二進制內 容如下“30 78 30 31 30 78 30 32”,b.dat二進制內容如下“30 78 30 33 30 78 30 34”,寫了個dos腳本merge.bat,內容如下:"copy a.dat+b.dat c.dat"。
但新生成的c.dat文件最后多了個結束符"1A",c.dat文件內容如下“30 78 30 31 30 78 30 32 30 78 30 33 30 78 30 34 1A”。
后上網查找了一下原因,是由于copy命令默認是將目標文件和源文件均視為文本文件,因此新生成的文件帶上了文本結束符"1A"。
解決的辦法很簡單,就是在拷貝時指明是拷貝二進制文件。
新的批處理內容如下:"copy /b a.dat+b.dat c.dat"