2014-12-11 103 views
0

我試圖用sed命令清除一個txt文件中的所有字符怪異:刪除文本文件

sed -i.bak -e '[email protected]^[A-Za-z0-9_.;,:][email protected]@g' *.txt 

回報

sed: RE error: illegal byte sequence 

我在做什麼毛病經常EXP?通常,我說 「全部替換不是A-ZA-Z0-9 _;,:」 有 「」

+0

您可能想要使用一些POSIX爲清楚起見字符類名(?):'SED -i.bak -e「S/[^ [:alnum:] [:punct:] [:blank:]] // g'* .txt' - 你知道你也在刪除空格和製表符? – 2014-12-11 00:53:33

+1

[RE錯誤:Mac OS X上的非法字節序列]的可能重複(http://stackoverflow.com/questions/19242275/re-error-illegal-byte-sequence-on-mac-os-x) – 2014-12-11 00:54:51

+0

哦,是的,我如何保持空間? – Michele 2014-12-11 01:19:52

回答

1

你把^ @不好的地方,把它放在那裏:

sed -i.bak -e '[email protected][^A-Za-z0-9_\.;,:]\[email protected]@g' *.txt 

,而不是小的變化(backslashing一些特殊字符)

+0

你正在運行哪個操作系統? – 2014-12-11 00:37:43

+0

我使用的是Mac OS – Michele 2014-12-11 00:44:14

+0

正在使用-E而不是-e幫助嗎? – 2014-12-11 00:46:58

0

比方說您有一個名爲「my_file」的文件這樣的事情

Location: http://www.google.gy/?gws_rd=cr&ei=l_KIVOXnIsinNq2NgsgB [following] 
--2014-12-10 21:25:44-- http://www.google.gy/?gws_rd=cr&ei=l_KIVOXnIsinNq2NgsgB 
Resolving www.google.gy (www.google.gy)... 64.233.176.94, 2607:f8b0:4002:c05::5e 
Connecting to www.google.gy (www.google.gy)|64.233.176.94|:80... connected. 
HTTP request sent, awaiting response... 200 OK 
Length: unspecified [text/html] 
Saving to: `index.html.2' 

你可以試試

sed -i.bak -e 's#[^[:alnum:].;,:]##g' 'my_file' 

這將查找非字母數字或「。」或「;」或「,」或「:」並打印的字符。 結果

Location:http:www.google.gygwsrdcreilKIVOXnIsinNq2NgsgBfollowing 
2014121021:25:44http:www.google.gygwsrdcreilKIVOXnIsinNq2NgsgB 
Resolvingwww.google.gywww.google.gy...64.233.176.94,2607:f8b0:4002:c05::5e 
Connectingtowww.google.gywww.google.gy64.233.176.94:80...connected. 
HTTPrequestsent,awaitingresponse...200OK 
Length:unspecifiedtexthtml 
Savingto:index.html.2 
0

格倫·傑克曼是正確的,在幫助其他職位找到了解決辦法...

唯一的問題就是命令現在只知道英語拉丁字符所以將無法正常工作......

這裏的結果,什麼都沒有改變:

ÁÉc†ÿ°「Å9,0,sub,,0,0,0,,Pero, aun no comprendo porque quer√≠a acabar conÄC∂u⁄ÁÉx¨†ú°ñÅ996,0,sub,,0,0,0,,õÇ–†µ°ØÅ*10,0,sub,,0,0,0,,Ha deshonrado aléC∂u⁄ÁÉ©≤†」°ÕÅ11,0,sub,,0,0,0,,{\pos(1481.142,795.974)\bord0\fad(800,0)}Himalayan RangeõÇ!¸C∂[email protected]óÁÉf†」°ÕÅ12,0,sub,,0,0,0,,¬øEsta seguro que querer hacerlo solo?, se√±or MitsumazaõÇ»†ª°µÅî13,0,sub,,0,0,0,,Silencio Tatsumi, tranquil√≠zateõÇ2C∂[email protected]ôÁÉ,†©°£Å14,0,sub,,0,0,0,,Pero se√±or...õÇ\†≠°ßÅ\15,0,sub,,0,0,0,,Aunque lo digas...õÇ<†∏°≤Åò16,0,sub,,0,0,0,,Tengo un esp√≠ritu aventureroõÇ|C∂[email protected]£ÁÉ@†∞°™Å17,0,sub,,0,0,0,,Lo entiendo se√±or...õÇ–†≤°¨Å–18,0,sub,,0