今天在用python做爬蟲后需要merge文件,但是由於在設計階段沒有考慮各網站編碼的不統一,所以導致merge出來的文件格式亂的。后來想到用shell來解決這個問題。
比如我需要將title目錄下的文件編碼轉換后放到/gbk/目錄下
find . -type -f -exec iconv -c -f utf-8 -t gbk {} -o /gbk{} \;
加上-c是因為在conv過程中有可能編碼失敗,需要ignore,類似python的 decode('utf-8',ignore).encode('gbk')
find命令詳解
find . -name "*something*" -exec action {} somearguments \;
find . -name "*something*" 找出所有名字包含something的文件
-exec 執行后面的命令, action 某個命令名,就是例子中的iconv
\; 結束命令