如何创建日期时间对象、格式化它并将其分配给变量?以下方法不起作用:
#!/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"