我有一个脚本可以根据日期启动数据库查询。现在,脚本默认为昨天的日期:
function startDate() {
date --date="yesterday" "+%Y-%m-%d";
}
START= "`startDate`"
我想要做的是将参数传递给脚本,以便cron(或诸如此类)可以具有可配置的日期。我无法为函数和函数调用获得正确的语法:
function startDate() {
if [ -z "$1" ]
then
date --date="yesterday" "+%Y-%m-%d";
else
"$1"
fi
}
START= "`startDate \"$1\"`"
$ sh shTest.sh 2014-05-19
shTest.sh: line 6: 2014-05-19: command not found
shTest.sh: line 10: : command not found
我在这里缺少什么?
答案 0 :(得分:1)
使用BASH你可以:
START="$(startDate "$1")"
此外,您的功能需要echo $1
:
function startDate() {
if [ -z "$1" ]
then
date --date="yesterday" "+%Y-%m-%d";
else
echo "$1"
fi
}