linux - Linux Shell Scripts如何判断今天是星期天?

标签 linux shell

我在 shell 中使用这些来判断星期日:

week=`date -d $day +%w`
month=`date -d "-1 day ago $day" '+%d'`

if [ "$week" = "0" ];then
if [ "$month" = "01" ];then

但是当 $day 为 20171103 时,被认为是星期日,则漏掉了 20171105。

然后我在服务器中运行“date -d 20171105 +%w”,它显示为 0,并且 if caluse 为真。然后我检查时区,时区是正确的,+0800

shell中有没有更好的方法可以解决这个问题?判断YYYYMMDD这样的字符串是否是星期天更安全稳健?

最佳答案

为什么不直接使用 date %u 作为星期几?

man page 中有很多选项.

关于linux - Linux Shell Scripts如何判断今天是星期天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47170346/

相关文章:

c - 从静态编译函数返回时子例程线程 JIT x86 机器代码段错误

Windows批处理脚本从文件名中删除括号中的文本?

linux - 从子进程更改当前目录

node.js - 使用带有 Fish shell 的调试 NPM 模块

linux - 如何使用 Bash Shell 检查 Java 版本?

c++ - 带有 "Accept=true"的 systemd 套接字在服务启动之前有很长的延迟

linux - 在 CentOS 6.6 上安装 Docker

c++ - 在 Ubuntu 12.10 上不能包含 "linux/in6.h"而没有错误

linux - 如何创建 httpd.conf 文件

python - 尝试通过 Subprocess 发送命令以使用 ffmpeg