在awk变量中转换数据格式
我已经下载了下面的文件,需要使用在awk变量中转换数据格式,awk,Awk,我已经下载了下面的文件,需要使用awk将其日期格式转换为YYYY-MM-DD。File.TXT的示例内容 1;ABC;SSS;Mar 12, 2020;4;1;0;5;0;0;0;0 2;DEF;AAA;Apr 14, 2020;4;1;0;5;0;0;0;0 期望输出 1;ABC;SSS;2020-03-12;4;1;0;5;0;0;0;0 2;DEF;AAA;2020-04-14;4;1;0;5;0;0;0;0 此脚本应完成以下操作: BEGIN{ FS=";" OFS=
awk
将其日期格式转换为YYYY-MM-DD
。File.TXT的示例内容
1;ABC;SSS;Mar 12, 2020;4;1;0;5;0;0;0;0
2;DEF;AAA;Apr 14, 2020;4;1;0;5;0;0;0;0
期望输出
1;ABC;SSS;2020-03-12;4;1;0;5;0;0;0;0
2;DEF;AAA;2020-04-14;4;1;0;5;0;0;0;0
此脚本应完成以下操作:
BEGIN{
FS=";"
OFS=";"
month["Jan"] = "01"
month["Feb"] = "02"
month["Mar"] = "03"
month["Apr"] = "04"
month["May"] = "05"
month["Jun"] = "06"
month["Jul"] = "07"
month["Aug"] = "08"
month["Sep"] = "09"
month["Oct"] = "10"
month["Nov"] = "11"
month["Dec"] = "12"
}
{
split($4,date," ")
$4 = date[3]"-"gsub(",","",date[2])"-"month[date[1]]
print
}
使用awk-f script.awk youinput.txt调用此脚本应能实现以下功能:
BEGIN{
FS=";"
OFS=";"
month["Jan"] = "01"
month["Feb"] = "02"
month["Mar"] = "03"
month["Apr"] = "04"
month["May"] = "05"
month["Jun"] = "06"
month["Jul"] = "07"
month["Aug"] = "08"
month["Sep"] = "09"
month["Oct"] = "10"
month["Nov"] = "11"
month["Dec"] = "12"
}
{
split($4,date," ")
$4 = date[3]"-"gsub(",","",date[2])"-"month[date[1]]
print
}
使用awk-f script.awk youinput.txt
进行呼叫,因此我们鼓励用户以代码的形式展示他们的努力,因此请在您的问题中添加相同的内容,然后让我们知道。这是否回答了您的问题?我使用了这个命令,但它不起作用。。cat File.txt | awk-F';''文件{OFS=“|”}{print$(日期-d$3+%Y%m%d”)}等等,我们鼓励用户以代码的形式展示他们的努力,所以请在您的问题中添加相同的内容,然后让我们知道。这是否回答了您的问题?我使用了这个命令,但它不起作用。。cat File.txt | awk-F';''文件{OFS=“|”}{print$(日期-d$3+%Y%m%d”)}