era*_*ran 5 unix linux excel awk
我有一个以逗号分隔的文件,第一列是格式为01/31/2010的日期,我想将其更改为纪元时间,以便文件"file.csv":
01/30/2010,1,"hi"
01/31/2010,3,"bye"
Run Code Online (Sandbox Code Playgroud)
将更改为"output.csv":
1264809600,1,"hi"
1264896000,3,"bye"
Run Code Online (Sandbox Code Playgroud)
我知道命令行日期-d"01/30/2010"+%s可以工作,但只能在一个日期,我需要将它提供给一个表,所以,有没有办法使用awk与一些功能():
cat file.csv | awk -F, 'print func($1)","$2","$3}'
Run Code Online (Sandbox Code Playgroud)
因为我真的不在乎我是怎么做的,或者,当字符串是mm/dd/yyyy时,如何将excel中的日期更改为纪元...
TZ=PST awk -F, '{split($1,date,"/");
$1=mktime(date[3] " " date[1] " " date[2] " " "00 00 00");
print}'
Run Code Online (Sandbox Code Playgroud)
或者,调用date
:
TZ=PST awk -F, '{ OFS = FS;
command="date -d" $1 " +%s";
command | getline $1;
close(command);
print}'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8588 次 |
最近记录: |