如何在文本文件linux/unix中更改日期格式 [英] How to change date format in text file linux/unix

查看:57
本文介绍了如何在文本文件linux/unix中更改日期格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

以下是文本文件myfile.txt

7022122465,0,0,day,2015-09-29 10:48:33
7022597642,0,0,day,2015-09-29 10:48:33
7022848906,0,0,day,2015-09-29 10:48:33
7022191546,0,0,day,2015-09-29 10:48:33
7022180761,0,0,day,2015-09-29 10:48:33
7022125589,0,0,day,2015-09-29 10:48:33
7022224472,0,0,day,2015-09-29 10:48:33

我想使用正则表达式将最后一列日期格式从2015-09-29更改为2015:09:29,请帮助我.

I want to change last column date format from 2015-09-29 to 2015:09:29 using regular expression please help me.

我已经尝试过了,但是替换了正则表达式(我是linux的初学者)

I have tried like this but replacing regular expression (i am beginner to linux)

sed -r  's/([0-9]{4}-[0-9]{2}-[0-9]{2})/([0-9]{2}:[0-9]{2}:[0-9]{2})/g' myfile.txt

推荐答案

您可以使用此

sed -r 's/([0-9]{4})-([0-9]{2})-([0-9]{2})/\1:\2:\3/g' myfile.txt

()是捕获组.无论使用捕获组匹配的结果是什么,都可以存储,并且可以在替换期间使用 \ 1 \ 2 等进行反向引用.

() are capturing groups. Whatever results are matched using capturing groups are stored and can be backreferenced during substitution using \1, \2 etc.

([0-9]{4})-([0-9]{2})-([0-9]{2})
<--------> <--------> <-------->
1st group  2nd group  3rd group

这篇关于如何在文本文件linux/unix中更改日期格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆