Bash awk文本替换脚本

Bash awk文本替换脚本,bash,date,awk,Bash,Date,Awk,我试图写一个脚本,把今天的日期替换成明天的日期。我的问题取决于awk命令。以下是我迄今为止所做的工作: date_today=`date` day_today=`echo $date_today | awk '{print $3}'` day_tomorrow=$(( ++day_today )) date_tomorrow=`echo $date_today | awk '{print $3=$day_tomorrow}'` 但它不会打印预期的日期。我只是想用明天的日期替换今天的日期。因为

我试图写一个脚本,把今天的日期替换成明天的日期。我的问题取决于awk命令。以下是我迄今为止所做的工作:

date_today=`date`
day_today=`echo $date_today | awk '{print $3}'`
day_tomorrow=$(( ++day_today ))

date_tomorrow=`echo $date_today | awk '{print $3=$day_tomorrow}'`

但它不会打印预期的日期。我只是想用明天的日期替换今天的日期。

因为您还没有显示完成日期所需的格式,所以我假设它可能是年-月日期格式

解决方案1:使用
GNU
日期,如果系统中有
GNU
日期,则以下内容可能会对您有所帮助

date --date="+1 day" +"%Y-%m-%d"
解决方案2:具有非GNU日期的下列选项可能会对您有所帮助。(因为我的系统中有GNU日期,所以无法测试它)


此外,如果您不需要上述格式,您可以通过更改上述代码中的
%Y-%m-%d
来更改它。

因为您没有显示完成日期所需的格式,所以我假设它可以是年-月日期格式

解决方案1:使用
GNU
日期,如果系统中有
GNU
日期,则以下内容可能会对您有所帮助

date --date="+1 day" +"%Y-%m-%d"
解决方案2:具有非GNU日期的下列选项可能会对您有所帮助。(因为我的系统中有GNU日期,所以无法测试它)


此外,如果您不需要上述格式,您可以通过更改上述代码中的
%Y-%m-%d
来更改它。

关于
日期-d“$my_date+1天”
awk
是一个强大的工具,但这并不意味着您必须变得如此不切实际,以至于无法使用正确的工具来完成工作。用
date
本身完成作业。好!感谢您的回答。您还需要更新Q,以显示您希望处理的日期格式的示例
++dateVal
将对类似于
20180112
的格式进行排序,但不适用于月份或年度债券。另外,你有没有试着在这里搜索这个问题,我知道在过去的10天里,它被问到并回答了。祝你好运。
date-d“$my_date+1天”
怎么样?
awk
是一个强大的工具,但这并不意味着你必须变得如此不切实际,以至于你不能为工作使用正确的工具。用
date
本身完成作业。好!感谢您的回答。您还需要更新Q,以显示您希望处理的日期格式的示例
++dateVal
将对类似于
20180112
的格式进行排序,但不适用于月份或年度债券。另外,你有没有试着在这里搜索这个问题,我知道在过去的10天里,它被问到并回答了。祝你好运