回覆列表
  • 1 # 使用者2953035810118

    檢視檔案編碼

    在Linux中檢視檔案編碼可以透過以下幾種方式:

    1.在Vim中可以直接檢視檔案編碼

    :set fileencoding

    即可顯示檔案編碼格式。

    如果你只是想檢視其它編碼格式的檔案或者想解決用Vim檢視檔案亂碼的問題,那麼你可以在

    ~/.vimrc 檔案中新增以下內容:

    set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936

    這樣,就可以讓vim自動識別檔案編碼(可以自動識別UTF-8或者GBK編碼的檔案),其實就是依照fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼開啟。

    檔案編碼轉換

    1.在Vim中直接進行轉換檔案編碼,比如將一個檔案轉換成utf-8格式

    :set fileencoding=utf-8

    2. iconv 轉換,iconv的命令格式如下:

    iconv -f encoding -t encoding inputfile

    比如將一個UTF-8 編碼的檔案轉換成GBK編碼

    iconv -f GBK -t UTF-8 file1 -o file2

    iconv -f gbk -t utf8 linux常用命令.txt > linux常用命令.txt.utf8

    檔名編碼轉換:

    從Linux 往 windows複製檔案或者從windows往Linux複製檔案,有時會出現中文檔名亂碼的情況,出現這種問題的原因是因為,windows的檔名 中文編碼預設為GBK,而Linux中預設檔名編碼為UTF8,由於編碼不一致,所以導致了檔名亂碼的問題,解決這個問題需要對檔名進行轉碼。

    在Linux中專門提供了一種工具convmv進行檔名編碼的轉換,可以將檔名從GBK轉換成UTF-8編碼,或者從UTF-8轉換到GBK。

    首先看一下你的系統上是否安裝了convmv,如果沒安裝的話用:

    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編碼(只是檔名編碼的轉換,檔案內容不會發生變化)

  • 中秋節和大豐收的關聯?
  • 形容很吵的聲音一下就沒有了,用啥成語?