2016-04-17 43 views
-3

我最近被引入到shell腳本,並希望知道刪除所有非ascii字符的實用程序。最值得注意的是如何用它的控件字符替換(1-31)中的ascii字符。如何刪除所有非ASCII字符(字符代碼128-255)?

+0

哪個Unix和哪個shell?什麼「用(1 -31)替換ascii字符與它的控制字符」是什麼意思? –

+0

比如backspace會打印出「^ H」或者取消將打印出「^ X」,就像在這個ascii表格中一樣http://www.physics.udel.edu/~watson/scen103/ascii.html – ProxyStudent

回答

0

這裏是如何與tr命令去如果你想只保留「ASCII字符」除128和255之間的a.in文件使用Unix(翻譯字符)

cat a.in | tr -cd '\128-\255' 

如果你婉刪除「ASCII字符」不在32和255之間:

cat a.in | tr -d '\0-\31' |tr -d '\255-\377' 

也許答案How do I grep for all non-ASCII characters in UNIX也可以b有些幫助。