2013-05-14 97 views

回答

3

也許這tr命令也應該工作:

tr '\xE2\x80\xA8' ' ' <inFile> outFIle 

工作液:感謝OP找到這個:

sed -i.old $'s/\xE2\x80\xA8/ /g' inFile 
+0

唉,它似乎並不。 :/ –

+0

你可以試試:'tr -d'\ x20 \ x28' anubhava

+2

這樣就結束了:'sed -i.old $'s/\ xE2 \ x80 \ xA8 // g'filename' - 漂亮接近你的。 :) –

1

你或許可以用sed:

sed 's/\x20\x28//g' <file_in.txt >file_out.txt 

覆蓋原文件:

sed -i 's/\x20\x28//g' file.txt 

編輯:(見chepner的評論)你應該確保你有正確的字節,取決於編碼,然後使用sed刪除th EM。您可以使用例如od -t x1查看十六進制轉儲並找出編碼。

+3

2028 Unicode的代碼點;它在文件中的顯示方式取決於編碼。對於UTF-8,字節序列將是'\ xE2 \ x80 \ xA8'。 – chepner

3

我注意到在你的截圖中,你已經在vim中打開了文件,那爲什麼不在vim中做替換呢?

在vim

你可以做

:%s/(seebelow)//g 

(seebelow)部分,你可以輸入:

CTRL-Vü

+1

不幸的是,我需要將它自動化 - 雖然這是一個非常有用的提示! –

+1

如果你有一些數量的文件,vim也可以自動完成它。 (帶-w和-s)。但如果你有一大堆文件,shell是正確的路。 – Kent