【发布时间】:2016-10-05 13:54:30
【问题描述】:
在文件中,我必须用空格替换特殊字符\/:?|°%。我尝试了下面的代码,但它没有用空格替换\:
awk '{gsub(/[\/:?|°%]/," "); print} else print}' $file
【问题讨论】:
-
你必须用另一个反斜杠来转义反斜杠 -
else print在这里没有任何意义。
在文件中,我必须用空格替换特殊字符\/:?|°%。我尝试了下面的代码,但它没有用空格替换\:
awk '{gsub(/[\/:?|°%]/," "); print} else print}' $file
【问题讨论】:
else print 在这里没有任何意义。
awk '{gsub(/[/:?|°%\\]/," ");print}' file
【讨论】:
为此使用tr 怎么样?
tr '\\/:?|º%' ' ' < file
注意\需要转义以防止它具有特殊含义。
例如:
$ tr '\\/:?\|º%' ' ' <<< "hello\i am/here:oh?wait|iºam%done"
hello i am here oh wait i am done
【讨论】: