【发布时间】:2021-03-16 09:40:49
【问题描述】:
我想改变什么
.:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:.:/sbin:/bin
我想做什么
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:.
我想提取所有点(“.”),并想追加到行尾。
如果行中没有点(“.”),则只打印该行。
我可以擦除有点的行中的点。但在这种情况下,我无法将点附加到行尾 (/\.:/)。
$ echo /usr/local:.:/bin | sed -r -e "/\.:/s/(\.:)//g"
我怎样才能在我擦除单词后附加擦除的单词,只能使用sedcommand?
【问题讨论】:
-
你真的需要使用sed吗?在 Awk 中会容易得多!
标签: regex sed replace sh posix-ere