我对Perl一无所知。我已经查看了一些在线教程,并且对以下内容感到茫然。
我在PostgreSQL中进行查询,保存为CSV文件。但是,创建CSV文件后需要更改一个元素,我不知道该怎么做。
现有的查询结果是这样的
phone date time staff email and customer ID -- my explanation
1112223333,10/21/2013,3:00 AM,sklund@myemail.comSMIB010170 -- data in csv
查询完成后,时间字段中的数据必须转换为:
1112223333,10/21/2013,03:00am,sklund@myemail.comSMIB010170
如您所见,如果小时数小于10,则需要修改时间0
,并且AM
必须更改为am
。
是否有一个简单的Perl脚本可以执行此操作?当然,数据行会有所不同,因为每一行都会反映当天查询的结果。
如果有人可以指点我的教程,链接或帮助,我将非常感激。
答案 0 :(得分:1)
这将满足您的需求。
我假设你想要删除AM
之前的空格?你没有在你的问题中提到它。
perl -pe 's/,(\d{1,2}):(\d\d)\s+([AP]M),/sprintf ",%02d:%02d%s,",$1,$2,lc $3/ei' mylogfile > newlogfile