在"。"之后删除空格。在shell脚本中

时间:2014-11-04 04:09:58

标签: bash shell unix

我搜索了网站,但无法得到相关答案。几乎所有这些都是关于删除所有的空白区域。 我需要的是在“。”之后删除空格或制表符。 例如:

I am here. Where are you?

结果应为

I am here.Where are you?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

通过sed,

$ echo 'I am here. Where are you?' | sed 's/\.[[:space:]]/./g'
I am here.Where are you?

sed 's/\.[[:blank:]]/./g' file

<强>解释

  • \.匹配文字点。
  • POSIX字符类[[:space:]]将匹配所有空白字符,包括换行符
  • POSIX字符类[[:blank:]]将匹配所有水平空格。
  • 以上sed命令会将所有匹配的字符替换为.,因此将.替换为带有点的空格后面的字符将为您提供所需的输出。