我有一个代码块在一个外壳脚本如下..如何避免在外壳脚本执行命令错误
run_checks()
{
# Check if program is already running
if ! mkdir /tmp/aisync.lock; then
printf "Failed to aquire lock.\n" >&2
exit 1
fi
trap 'rm -rf /tmp/aisync.lock' EXIT
}
它基本上检查是否存在aisync.lock如果确实如此失败,以防止多个运行相同shell脚本的实例。
但是,如果我跑这从控制台我得到..
# syncai.sh
mkdir: 0653-358 Cannot create /tmp/aisync.lock.
/tmp/aisync.lock: Do not specify an existing file.
Failed to aquire lock.
有没有办法避免的错误?
mkdir: 0653-358 Cannot create /tmp/aisync.lock.
/tmp/aisync.lock: Do not specify an existing file.
,使它看起来,当我从命令行运行它更干净。我知道,如果我是和cron我可以给一切到/ dev/null的,我打算做..但是从控制台手动运行我如何从打印中删除这些错误?
谢谢。
看一看'man lockfile'! –
#man lockfile 未找到或未安装lockfile的手动条目。 运行AIX 7.1 – exxoid