gpt4 book ai didi

linux - 如果列中的模式匹配,则提取标题

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:58:21 24 4
gpt4 key购买 nike

如果特定列中的模式匹配,我将尝试提取并打印文件的标题。

这是一个例子:

[user ~]$ cal |sed 's/July 2014//'  
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

预期输出:

如果输入日期 =31,则打印 31 日。

需要说明的是,我不能使用 date -d 标志,因为我的操作系统不支持它。可能需要 awk 来解决这个问题。

[user ~]$ date -d 20140731 +%A  
Thursday

我希望我能够清楚地表达我的问题和疑虑。

最佳答案

使用 awk:

cal | awk -v date=31 'NR == 2 { split($0, header) } NR > 2 { for (i = 1; i <= NF; ++i) if ($i == date) { print header[NR == 3 ? i + 7 - NF : i]; exit } }'

输出:

Th

关于linux - 如果列中的模式匹配,则提取标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24904853/

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