1. 安裝轉換工具
[root@master /]# yum install convmv
2. 查看Linux的字元集
[root@master /]# locale
LANG=zh_CN.utf8
LC_CTYPE="zh_CN.utf8"
LC_NUMERIC="zh_CN.utf8"
LC_TIME="zh_CN.utf8"
LC_COLLATE="zh_CN.utf8"
LC_MONETARY="zh_CN.utf8"
LC_MESSAGES="zh_CN.utf8"
LC_PAPER="zh_CN.utf8"
LC_NAME="zh_CN.utf8"
LC_ADDRESS="zh_CN.utf8"
LC_TELEPHONE="zh_CN.utf8"
LC_MEASUREMENT="zh_CN.utf8"
LC_IDENTIFICATION="zh_CN.utf8"
LC_ALL=
3. 開始轉換
[root@master /]# convmv --notest --nosmart-f utf8-t gb2312-r test
解釋:
test 轉換的目錄
-r 處理子檔案夾
utf8 ---之前的編碼
gb2312---之後的編碼
注釋:本地的字元集為zh_CN.utf8拷貝到windows是亂碼所以要轉化成gb2312編碼
輸入/輸出格式規範:
-f, --from-code=名稱 原始文本編碼
-t, --to-code=名稱 輸出編碼
資訊:
-l, --list 列舉所有已知的字元集
例子:
iconv -f utf-8 -t gb2312 aaa.txt >bbb.txt
這個命令讀取aaa.txt檔案,從utf-8編碼轉換為gb2312編碼,其輸出定向到bbb.txt檔案。
查看檔案命令主要有一下三個:
cat命令功能用於顯示整個檔案的內容單獨使用沒有翻頁功能因此經常和more命令搭配使用,cat命令還有就是將數個檔案合并成一個檔案的功能。more命令功能:讓畫面在顯示滿一頁時暫停,此時可按空格健繼續顯示下一個畫面,或按Q鍵停止顯示。less命令功能:less命令的用法與more命令類似,也可以用來瀏覽超過一頁的檔案。所不同的是less命令除了可以按空格鍵向下顯示檔案外,還可以利用上下鍵來捲動檔案。當要結束瀏覽時,只要在less命令的提示符“:”下按Q鍵即可。其實這三個命令除了cat命令有合并檔案的功能,其餘功能上相近,只是從瀏覽習慣和顯示方式上有所不同
查看檔案編碼file命令file test.sqltest.sql: UTF-8 Unicode text, with escape sequences功能說明:辨識檔案類型。語 法:file [-beLvz][-f <名稱檔案>][-m <魔法數字檔案>...][檔案或目錄...]補充說明:通過file指令,我們得以辨識該檔案的類型。參 數: -b 列出辨識結果時,不顯示檔案名稱。 -c 詳細顯示指令執行過程,便於排錯或剖析器執行的情形。 -f<名稱檔案> 指定名稱檔案,其內容有一個或多個檔案名稱呢感,讓file依序辨識這些檔案,格式為每列一個檔案名稱。 -L 直接顯示符號串連所指向的檔案的類別。 -m<魔法數字檔案> 指定魔法數字檔案。 -v 顯示版本資訊。 -z 嘗試去解讀壓縮檔的內容。一、利用iconv命令進行編碼轉換檔內容編碼轉換 iconv命令用於轉換指定檔案的編碼,預設輸出到標準輸出裝置,亦可指定輸出檔案. 用法: iconv [選項...] [檔案...] 有如下選項可用: 輸入/輸出格式規範: -f, --from-code=名稱 原始文本編碼 -t, --to-code=名稱 輸出編碼 資訊: -l, --list 列舉所有已知的字元集 輸出控制: -c 從輸出中忽略無效的字元 -o, --output=FILE 輸出檔案 -s, --silent 關閉警告 --verbose 列印進度資訊 -?, --help 給出該系統求助列表 --usage 給出簡要的用法資訊 -V, --version 列印程式版本號碼 例子: iconv -f utf-8 -t gb2312 aaa.txt >bbb.txt 這個命令讀取aaa.txt檔案,從utf-8編碼轉換為gb2312編碼,其輸出定向到bbb.txt檔案. 二、檔案名稱編碼轉換 現在用linux,原來在windows裡的檔案都是用GBK編碼的.copy到linux下是亂碼,檔案內容可以用iconv來轉換可是好多中文的檔案名稱還是亂碼,找到個可以轉換檔名編碼的命令,就是convmv. convmv命令詳細參數 例如 convmv -f GBK -t UTF-8 *.mp3 不過這個命令不會直正的轉換,你可以看到轉換前後的對比.如果要直正的轉換要加上參數 --notest convmv -f GBK -t UTF-8 --notest *.mp3 -f 參數是指出轉換前的編碼,-t 是轉換後的編碼.這個千萬不要弄錯了.不然可能還是亂碼哦.還有一個參數很有用.就是 -r 這個表示遞迴轉換目前的目錄下的所有子目錄.