如何将格式化的日期分配给变量?

如何将格式化的日期分配给变量?

如何创建日期时间对象、格式化它并将其分配给变量?以下方法不起作用:

#!/usr/bin/env bash
time=14:00
timex = date -d "$time 5 minutes ago" +'%H:%M'
echo $timex

结果: line 3: timex: command not found。但是为什么呢?

答案1

结果:第 3 行:timex:未找到命令。但为什么呢?

你的 shell 脚本有语法错误,并且timex未定义。

您可以使用壳牌检测检查 Bash 脚本中的错误:

$ shellcheck myscript

Line 3:
timex = date -d "$time 5 minutes ago" +'%H:%M'
^-- SC2037: To assign the output of a command, use var=$(cmd) .
      ^-- SC1068: Don't put spaces around the = in assignments.

Line 4:
echo $timex
     ^-- SC2154: timex is referenced but not assigned (did you mean 'time'?).
     ^-- SC2086: Double quote to prevent globbing and word splitting.

$ 

尝试使用以下脚本:

#!/usr/bin/env bash
time=14:00
timex=$(date -d "$time 5 minutes ago" +'%H:%M')
echo "$timex"

相关内容