您好,登錄后才能下訂單哦!
iconv,enconv,enca,convmv,unix2dos,dos2unix文件格式轉換,od/cut/wc/dd/diff/uniq/nice/du等命令
【Linux常用工具】1.1 diff命令的三種格式
摘要: 1.在Vim中查看文件編碼 :set fileencoding 即可顯示文件編碼格式。 如果你只是想查看其它編碼格式的文件或者想解決 用Vim查看文件亂碼 的問題,那么你可以在 ~/.vim rc 文件中添加以下內容: set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936 這樣,就可以讓vim自動 識別文件編碼(可以自動識別UTF-8
1.在Vim中查看文件編碼:set fileencoding
即可顯示文件編碼格式。
如果你只是想查看其它編碼格式的文件或者想解決 用Vim查看文件亂碼 的問題,那么你可以在
~/.vim rc 文件中添加以下內容:set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
這樣,就可以讓vim自動 識別文件編碼(可以自動識別UTF-8或者GBK編碼的文件),其實就是依照fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼打開。
輸入 :set ff=unix 後,儲存該文件檔案即可。
2.vim文件編碼轉換1.在Vim中直接進行轉換文件編碼,比如將一個文件轉換成utf-8格式
:set fileencoding=utf-8
3.iconv文件編碼轉換:iconv轉換,比如將一個UTF-8編碼的文件轉換成GBK編碼
iconv -f GBK -t UTF-8 file1 -o file2
iconv -f GB2312 -t UTF-8 test.txt -o test2.txt
下載地址:
ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.8.tar.gz
4.enconv轉換文件編碼,比如要將一個GBK編碼的文件轉換成UTF-8編碼,操作如下
enconv -L zh_CN -x UTF-8 filename
enconv -L GB2312 -x UTF-8 test.txt
5.enca (如果你的系統中沒有安裝這個命令,可以用sudo yum install -y enca 安裝 )查看文件編碼
$ enca filename
filename: Universal transformation format 8 bits; UTF-8CRLF line terminators
需要說明一點的是,enca對某些GBK編碼的文件識別的不是很好,識別時會出現:
Unrecognized encoding
6.convmv文件名編碼轉換:從Linux往windows拷貝文件或者從windows往Linux拷貝文件,
有時會出現中文文件名亂碼的情況,出現這種問題的原因是因為,
windows的文件名中文編碼默認為GBK,而Linux中默認文件名編碼為UTF8,由于編碼不一致,
所以導致了文件名亂碼的問題,解決這個問題需要對文件名進行轉碼。
在Linux中專門提供了一種工具convmv進行文件名編碼的轉換,
可以將文件名從GBK轉換成UTF-8編碼,或者從UTF-8轉換到GBK。
yum -y install convmv
下面看一下convmv的具體用法:
convmv -f 源編碼 -t新編碼 [選項]文件名
常用參數:
-r遞歸處理子文件夾
--notest真正進行操作,請注意在默認情況下是不對文件進行真實操作的,而只是試驗。
--list顯示所有支持的編碼
--unescap可以做一下轉義,比如把%20變成空格
比如我們有一個utf8編碼的文件名,轉換成GBK編碼,命令如下:
convmv -f UTF-8 -t GBK --notest utf8編碼的文件名
這樣轉換以后"utf8編碼的文件名"會被轉換成GBK編碼(只是文件名編碼的轉換,文件內容不會發生變化)
7.unix2dos,dos2unix轉換:使用od -c -t x1 abc.txt 查看文本文件里的特殊字符,DOS/Windows使用/r/n作為行尾符,Unix使用/n作為行尾符:
unix2dos < unix.txt > dos.txt 將Unix格式的純文本文件轉換成DOS/Windows格式的純文本文件
dos2unix < dos.txt > unix.txt 將DOS/Windows格式的純文本文件轉換成Unix格式的純文本文件
如果你在openoffice里編輯,是完全兼容的,如果你在vi里 出現/M等符號,可以使用tr或 sed工具過濾掉
在Linux下正常換行的文字,到了Windows下后,不再換行。
在Windows下換行時,有兩個字符:回車(/r)和換行(/n)。但在Linux下,只有一個換行(/n)
可使用unix2dos和dos2unix命令進行格式的轉換:
參數:
-k 保持輸出文件和輸入文件的日期時間戳不變
-o file 默認模式 .將file轉換,并輸出到file
-n infile outfile 新模式.轉換infile,并輸出到outfile
1. unix2dos 假設用vi新建一文本文件,輸入123456 [root@centos test]# ls -l a.txt -rw-r--r-- 1 root root 7 Jan 7 21:31 a.txt [root@centos test]# hexdump -c a.txt 0000000 1 2 3 4 5 6 /n 0000007 [root@centos test]# unix2dos -n a.txt b.txt unix2dos: converting file a.txt to file b.txt in DOS format ... [root@centos test]# ls -l total 8 -rw-r--r-- 1 root root 7 Jan 7 21:31 a.txt -rw------- 1 root root 8 Jan 7 21:34 b.txt [root@centos test]# hexdump -c a.txt 0000000 1 2 3 4 5 6 /n 0000007 [root@centos test]# hexdump -c b.txt 0000000 1 2 3 4 5 6 /r /n 0000008 b.txt是轉換后的DOS下的文件2. dos2unix [root@centos test]# dos2unix -n b.txt c.txt dos2unix: converting file b.txt to file c.txt in UNIX format ... [root@centos test]# ls -l total 12 -rw-r--r-- 1 root root 7 Jan 7 21:31 a.txt -rw------- 1 root root 8 Jan 7 21:34 b.txt -rw------- 1 root root 7 Jan 7 21:38 c.txt [root@centos test]# hexdump -c b.txt 0000000 1 2 3 4 5 6 /r /n 0000008 [root@centos test]# hexdump -c c.txt 0000000 1 2 3 4 5 6 /n 0000007 c.txt是轉換后unix下的文本文件
od命令 用戶通常使用od命令查看特殊格式的文件內容。通過指定該命令的不同選項可以以十進制、八進制、十六進制和ASCII碼來顯示文件。 語法:od[選項] 文件… 命令中各選項的含義:- A 指定地址基數,包括: d十進制 o八進制(系統默認值) x十六進制 n不打印位移值 - t 指定數據的顯示格式,主要的參數有:c ASCII字符或反斜杠序列 d有符號十進制數 f浮點數 o八進制(系統默認值為02)u無符號十進制數 x十六進制數 除了選項c以外的其他選項后面都可以跟一個十進制數n,指定每個顯示值所包含的字節數。 說明:od命令系統默認的顯示方式是八進制,這也是該命令的名稱由來(Octal Dump)。但這不是最有用的顯示方式,用ASCII碼和十六進制組合的方式能提供更有價值的信息輸出。
od和 hexdump顯示文件內容或流的八進制、十六進制或其他編碼的字節。它們對于訪問或可視地檢查文件中不能直接顯示在終端上的字符很有用。s-w8每行只用8個字節顯示:[tim@L gx]$ od -Ad -tax1 -w8 a.txt 0000000 1 2 3 4 5 6 cr nl 31 32 33 34 35 36 0d 0a 0000008 a b c d e f cr nl 61 62 63 64 65 66 0d 0a 0000016 h e l l o , w o 68 65 6c 6c 6f 2c 77 6f 0000024 r l d cr nl 72 6c 64 0d 0a -j2字符方式輸出test內容,跳過前兩個字節:[tim@L gx]$ od -Ad -tax1 -j2 a.txt 0000002 3 4 5 6 cr nl a b c d e f cr nl 33 34 35 36 0d 0a 61 62 63 64 65 66 0d 0a 6 0000018 l l o , w o r l d cr nl 6c 6c 6f 2c 77 6f 72 6c 64 0d 0a 0000029 -N2只顯示兩個字節,用字符方式顯示:[tim@L gx]$ od -Ad -tax1 -N2 a.txt 0000000 1 2 31 32 S
使用wc命令來進行文本內容統計: 指令名稱:wc語法:wc [clw] file 說明:按照不同選項來統計字節數、字數、行數等。具體應用實例請自行'man wc'來查看。 例子:統計當前目錄下文件的個數,使用命令ls -l | wc -l ps:該指令的參數選項比較少,曾有人使用C語言實現了wc的功能,你也可以試試哦!
使用sort命令對文本內容進行排序: 指令名稱:sort語法:sort [-bcdfimMnr][-o<輸出文件>][-t<分隔字符>][+<起始欄位>-<結束欄位>][--help][--verison][文件]選項解釋:(更多說明請自行man sort) -n:按照數目排序,number -r:降序排序 -u:去除重複項
使用uniq命令對文本進行重複列的查看和刪除: 指令名稱:uniq語法:uniq [選項] file 說明:顯示文本中行的某些特性。 選項解釋:(更多說明請自行 man uniq) -c:在行首加上該行出現的次數,count的縮寫。-d:只顯示重複行-u:顯示不重複的行
使用diff命令對文本進行比較操作: 指令名稱:diff語法:diff [選項] file1 file2 說明:diff是以逐行的方式,對兩個文件進行異同的操作。 選項解釋:(更多說明請自行 man diff) -i:忽略大小寫的差別-b:忽略空格的差別
使用du命令統計目錄或文件佔用磁盤空間大小: 指令名稱:du語法:du [選項]目錄或文件 選項解釋:(更多說明請自行man du) -k/m/g: 以kb、mb、gb顯示大小du -S | sort -n 列出佔用空間最大的目錄-sh:只查看指定的目錄,子目錄不查看
使用cut命令來提取想要的數據: 指令名稱:cut語法:cut [選項]文件 用法說明: -b:截取字節-c:截取字符cut -c1-15 表示截取從第一列到15列的內容cut -c1-4,8- 表示截取1到4列的內容,還有從第八列到最後的內容-f:截取字段cut -f1 -d‘:' 表示截取第一列,是以:作為分隔符來截取的cut -f1- -s:表示截取中間的分隔符為Tab鍵分割的文本ps:截取中文的時候需要注意中文字符是作為2個英文字符組成的。
使用dd命令來測試磁盤速度、創建新文件: 指令名稱:dd指令說明:從指定位置copy數據到指定輸出位置 應用實例:bs指定每次操作塊的大小,count指定操作的次數 創建2M大小的文件。# dd if=/dev/zero of=/home/test/2M.txt bs=1024 count=2048 同樣的,測試磁盤讀寫速度# dd if=/dev/zero of=/home/rwspeed.ret bs=1024 count=1048576 複製備份系統# dd if=/home/test/my_fiter of=/其他設備bs=512 count=256 ps:windows平臺上也存在著創建指定大小文件的命令,是fsutil。
使用nice命令來調整程序執行的優先級: 指令名稱:nice指令說明:調整進程的優先級 應用實例:Linux進程的優先級是從-20 ~ +20 的,數字越小,優先級越高,也就是佔用CPU的時間越多。 普通用戶只能降低程序的優先級,root用戶可以提高/降低進程的優先級。# nice 查看默認的優先級 # nice ./a.out 默認執行,給a.out增加10個優先級,也就是分配更少的cpu時間。# nice -n -20 a.out 為a.out執行最高的優先級Unix/Linux上面的命令很多,這是無數***和全世界的程序員們的智慧結晶。 熟練的掌握和使用系統提供的命令,往往會事倍功半。這裡只列出了很少的一部份, 其它的命令可以參考該網站的介紹,或者是找本介紹詳細的書籍來看看。
iconv,enconv,enca,convmv,unix2dos,dos2unix文件格式轉換,od/cut/wc/dd/diff/uniq/nice/du等命令
推薦文章
2 linux sort,uniq,cut,wc命令詳解
3 linux sort,uniq,cut,wc命令詳解
4 linux sort,uniq,cut,wc命令詳解
5 linux sort,uniq,cut,wc命令詳解
6 linux sort,uniq,cut,wc命令詳解
7 linux sort,uniq,cut,wc命令詳解
8 linux sort,uniq,cut,wc命令詳解
9 linux sort,uniq,cut,wc命令詳解
10 linux sort,uniq,cut,wc命令詳解
11 linux sort,uniq,cut,wc命令詳解
12 linux sort,uniq,cut,wc命令詳解
13 linux sort,uniq,cut,wc命令詳解
14 linux命令匯總(wc、cut、sort、
15 linux sort,uniq,cut,wc命令詳解
16 linux sort,uniq,cut,wc命令詳解
17 DOS文件轉換成UNIX文件格式:dos2
18 文本文件命令(wc,cut,sort,uniq)
19 文本文件命令(wc,cut,sort,uniq)
20 linux sort,uniq,cut,wc命令詳解
1 diff文件的格式
diff 參考 http://en.wikipedia.org/wiki/Diff diff是一個比較工具,它比較兩個文件,然后輸出兩個文
2 shell基礎11:文件分類、合并和
shell基礎11:文件分類、合并和分割(sort,uniq,join,cut,paste,split) <!-- google_ad_client =
3 Linux之du命令
我們來看下du命令的說明: 從其描述我們可以看出,可以查看出個文件以及目錄占用磁盤空間的大小,
4 linux命令diff
diff 命令是 Linux 上非常重要的工具,用于比較文件甚至目錄的內容,清晰的告訴你前后改動的地方。d
5 【Linux常用工具】1.1 diff命令
diff是用來比較兩個文本文件的差異的工具,它有三種格式,下面用實例介紹一下: 準備三個測試文件1.
6 讀懂diff文件
讀懂diff 作者: 阮一峰 日期: 2012年8月29日 diff是Unix系統的一個很重要的工具程序。 它用來比較
7 Linux命令-文件系統常用命令:df
df -h 人性化顯示文件系統的分區信息 注意:在linux中目錄也是文件,不要混淆下面的目錄文件說法。
8 使用Linux命令行將txt格式文件轉
在平時使用想要將txt格式的文本文件轉換為pdf文檔,簡簡單單的兩條命令幫你解決!嘿嘿:) 首先需要安
9 Linux下查看文件和文件夾大小的d
當磁盤大小超過標準時會有報警提示,這時如果掌握df和du命令是非常明智的選擇。 df 可以查看一級文
10 Linux下查看文件和文件夾大小的d
當磁盤大小超過標準時會有報警提示,這時如果掌握df和du命令是非常明智的選擇。 df 可以查看一級文
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。