我需要一个 shell 脚本来删除 17:00 之前安排的所有作业,并将用户名作为位置参数这就是我尝试做的
#!/bin/bash
currentTime = ‘date + %k%M’
check_time_tu_run()
{
tempTime=$1
if
[ $tempTime -gt 000 -a $tempTime -lt 1700];
then
for i in `atq | awk '{print $1}'`;do atrm $i;done
else
echo “Action is not in the period of time”
fi
}
check_time_to_run $currentTime
答案1
- 您在 date 命令周围使用了错误的引用。您使用“卷曲”单引号 (
‘...’
) 而不是反引号 (`...`
),但使用$(...)
而不是反引号。 =
变量赋值时不允许在 周围有空格- 后面
+
不能有空格。
使用:currentTime=$( date +%k%M )
还有你的函数的名称定义( check_time_tu_run
)
不是您的函数名称称呼( check_time_to_run
)
还有其他错误:将您的代码粘贴到https://www.shellcheck.net以获得更多帮助。