我有几个字符串:
4/1
4/2
4/40
..并且想用sed用小于10的数字填充字符串0,所以输出看起来像:
4/01
4/02
4/40
我在为此制作sed语句时遇到问题。你能帮忙吗?
这是我到目前为止所做的,我不知道该怎么办我才有'???'
sed 's#\/[0-9]#\/0???#g' myfile
答案 0 :(得分:1)
你很亲密:
$ sed -r 's#/([0-9])$#/0\1#' a
4/01
4/02
4/40
只需查看行$
的结尾并抓住()
中的块,然后使用\1
将其打印回来。此外,不需要g
,因为它每行只会发生一次。最后,无需转义/
,因为您使用的是分隔符#
。