bash - 在 bash 脚本中获取星期几

标签 bash sed

我想在变量 DOW 中包含星期几。

所以我使用以下 bash 脚本:

DOM=$(date +%d)
DOW=($($DOM % 7) ) | sed 's/^0*//'

不幸的是,我收到了这个错误:bash: 09: command not found。变量 $DOW 中的预期结果为 2 ( 9 % 7 = 2)。

我怎样才能让它工作? 它适用于第 1-8 天,但由于 C-hex,没有超过 8 的数字可用,并出现以下消息:bash: 09: value too great for base (error token is "09").

最佳答案

使用 %u。像这样:

DOW=$(date +%u)

来自man page :

%u day of week (1..7); 1 is Monday

关于bash - 在 bash 脚本中获取星期几,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22956516/

相关文章:

linux - 如何使用 grep、sed 和 awk 打印找到的模式后的下一个单词?

sed - 我如何获得 "sed"以删除除电子邮件地址之外的所有其他内容。

bash - sed/awk : Extract pattern from text stream

linux - 为什么我有时需要在 sed 中转义 ()

linux - 合并两个文本文件特定位置

linux - shell 清理脚本建议

linux - Bash expr 输出问题

bash - 从另一个函数调用时,函数中的子 shell 无法找到基本的 bash 命令

bash - 在 bash 中设置名称未知的变量

linux - 用字符串替换文件中的一行