Linux 中 vim/more/cat/tail/head 命令查看文件顯示亂碼


Linux 中 vim/more/cat/tail/head 命令查看文件顯示亂碼,亂碼原因:Linux默認字符集碼為 UTF-8 ,有些其它字庫未安裝

解決方法:

1)臨時解決方法將當前文件強制使用 UTF-8 顯示,在終端輸入命令

more note.txt | iconv -f GBK -t UTF-8

 

2)將當前文件通過 iconv 命令進行轉碼

  iconv 命令

用法:

iconv [選項...] [文件...]

參數:

輸入/輸出格式規范:
-f  --from-code=名稱 原始文本編碼
-t  --to-code=名稱 輸出編碼

-c 從輸出中忽略無效的字符
-o, --output=FILE 輸出文件
-s, --silent 關閉警告
--verbose 打印進度信息

示例:

a)將文件GBK編碼轉換為UTF-8

源文件:note.txt  編碼:GBK

目標文件:tnote.txt  編碼:UTF-8

iconv -f gbk -t utf-8 -c note.txt -o tnote.txt

b)把 note.txt 文件中的“穿越”文本提取,並且把編碼從GBK轉碼為UTF-8保存

cat note.txt | iconv -f gbk -t utf-8 -c | grep "穿越" >> text.out

注意:

>>和>都屬於輸出重定向,<屬於輸入重定向

>會覆蓋目標的原有內容。當文件存在時會先刪除原文件,再重新創建文件,然后把內容寫入該文件;否則直接創建文件。

>>會在目標原有內容后追加內容。當文件存在時直接在文件末尾進行內容追加,不會刪除原文件;否則直接創建文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM