Shell - 验证是否在新行上找到单个点

时间:2015-05-14 07:27:24

标签: shell

我有文件,有时其内容如下:

sometexthere1.33
sometexthere2.33
.
sometexthere3.33

我已经能够替换某些文本而不是那个点。 在我的情况下,我想在换行符上找到一个点时复制点。

1 个答案:

答案 0 :(得分:2)

您可以找到没有任何单个点的线条,并使用以下命令替换它们:

sed 's/^\.$/../'

如以下成绩单:

pax> echo 'sometexthere1.33
...> sometexthere2.33
...> .
...> sometexthere3.33' | sed 's/^\.$/../'

sometexthere1.33
sometexthere2.33
..
sometexthere3.33

sed中,'s/X/Y/'会将X的第一次出现更改为Y。在您的情况下,X必须为^\.$

  • 起始行标记'^';
  • 一个文字点,'\.';和
  • 结束标记'$'

Y当然只有两个点,'..'