gpt4 book ai didi

awk: mktime 返回 -1

转载 作者:行者123 更新时间:2023-12-05 01:48:36 33 4
gpt4 key购买 nike

有人能帮我理解为什么我在下面的代码中得到 mktime 返回的“-1”。谢谢。

#!/usr/local/bin/bash
f_name="crap.stat"
S_Date="2012-02-10"
E_Date="2012-02-13"

gawk -F '\t' -v s_date="$S_Date" -v e_date="$E_Date" 'BEGIN {s_time = mktime(s_date);e_time = mktime(e_date);print s_time, e_time}' $f_name

最佳答案

您必须为该功能使用特定格式。此处您的代码已修复:

#!/usr/local/bin/bash
f_name="crap.stat"
S_Date="2012-02-10"
E_Date="2012-02-13"

gawk -F '\t' -v s_date="$S_Date" -v e_date="$E_Date" '
BEGIN {
gsub( /-/, " ", s_date );
s_date = s_date " " 00 " " 00 " " 00;
s_time = mktime(s_date);
gsub( /-/, " ", e_date );
e_date = e_date " " 00 " " 00 " " 00;
e_time = mktime(e_date);
print s_time, e_time
}
' $f_name

结果:

1328828400 1329087600

它必须是下一个格式:YYYY MM DD HH MM SS[ DST],所以我将 - 替换为空格并在时间后补零。

关于awk: mktime 返回 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9772764/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com