2013-04-09 113 views

回答

3

桑达可能是这个最简单的方法:

$ cat file 
sentence one 
sentence two. 
sentence three 

$ sed 's/[^.]$/&./' file 
sentence one. 
sentence two. 
sentence three. 

在不使用周期结束[^.]$更换匹配的最后一个字符后面跟一个句&.的最后一个字符线。您应该留意可能包含句点的尾部空格作为最后一个可行字符。

编辑

随着awk我会做:

$ awk '/[^.]$/{$(NF+1)="."}1' FS= OFS= file 
sentence one. 
sentence two. 
sentence three. 
+0

我可以挑战你使用awk做呢? :D – fedorqui 2013-04-09 14:47:44

+1

@fedorqui没有真正的挑战哈哈:P – 2013-04-09 14:51:25

+0

另外一个sed-ish awk:'awk'{sub(/[^.]$/,“&。”,$ 0);打印}'文件' – progo 2013-04-09 14:53:30