【发布时间】:2018-10-19 09:14:49
【问题描述】:
我正在学习如何使用 sed,并看到我可以使用 = 插入行号。但是,这包括一个换行符:
文件:
alpha
beta
gamma
运行sed -n '=;p' file:
1
alpha
2
beta
3
gamma
是否可以在一次调用 sed 时将这些行号插入同一行?所以:
1 alpha
2 beta
3 gamma
我知道使用其他工具也可以做到这一点,但我想知道 sed 的具体功能。有没有办法在 = 之后附加另一个正则表达式替换以删除换行符?
【问题讨论】:
-
为什么是
sed?awk -v ln=1 '{print ln++ " " $0 }' file -
我知道,但想知道是否有可能。但是我愿意相信 awk 更好......
-
=命令实际打印行号,它不会将其插入到模式空间中。sed = file | paste - -是一种愚蠢的写作方式nl file -
不确定
sed是否像awkhere 那样简单。
标签: sed