我有2个壳脚本A.sh和B.sh
在A.sh内部,我想根据某些条件调用B.sh。 如下所示:
VAR=""
if [-z $VAR]:
then
echo "running B"
<path to B.sh>/B.sh > log.txt 2>&1
在A.sh定于作为cron作业要运行在crontab中每15分钟。
我已向B.sh和A.sh授予了执行所需的权限。
当我从外壳运行A时,如果满足条件,它可以执行B,但是通过crontab A运行时,它无法调用B。它也不会引发任何错误。
任何有关这帮助是appriciated。
答案 0 :(得分:0)
Shebang忘记了!?
#!/bin/bash
或
#!/usr/bin/env bash
答案 1 :(得分:0)
如果这是bash
,sh
或ksh
的{{1}}需要是这样的:
if
此外if [ -z "$VAR" ]
不取消设置了var(并用VAR=""
您检查未设置变量),其分配空字符串。所以,如果你想取消设置变量使用命令
-z
并以unset VAR
结束if
结构