我有一个文件:
....1342477599376
1342479596867
1342480248580
1342480501995
1342481198309
1342492256524
1342506099378....
这些行...
表示各种角色。我想用cat读取这个文件(这是我需要的那个)并且使用sed命令获取这些行,而不是我想将epoch转换为日期...
cat myfile.log | sed '...*//' | sed 's/...*//' | date -d @$1
不幸的是,这不起作用。
答案 0 :(得分:1)
单向,使用sed
:
cat file.txt | sed "s/^.*\([0-9]\{13\}\).*/date -d @\1/" | sh
结果:
Thu Jun 4 14:16:16 EST 44511
Sat Jun 27 17:07:47 EST 44511
Sun Jul 5 06:09:40 EST 44511
Wed Jul 8 04:33:15 EST 44511
Thu Jul 16 05:58:29 EST 44511
Sat Nov 21 05:42:04 EST 44511
Fri Apr 29 10:56:18 EST 44512
HTH
答案 1 :(得分:0)
这是类似的解决方案,但它会在流中找到时间戳
cat test.txt | sed 's/^/echo "/; s/\([0-9]\{13\}\)/`date -d @\1`/; s/$/"/' | bash