将Lockfile转换为带参数的bash脚本

问题描述 投票:0回答:1

我必须创建一个bash脚本来检查执行中是否还有其他相同的脚本。为此,我实施了这个解决方案

scriptToVerify="sl_dynamic_procedure.sh_${1}";
LOCKFILE=${SL_ROOT_FOLDER}/work/$scriptToVerify
if [ -e ${LOCKFILE} ] && kill -0 `cat ${LOCKFILE}`; then
  sl_log "---------------------------Warning---------------------------"
  sl_log "$scriptToVerify already in execution"
  exit
fi
trap "rm -f ${LOCKFILE}; exit" INT TERM EXIT
echo $$ > ${LOCKFILE}

我添加了${1},因为我的脚本有一个参数。如果我尝试执行没有参数的脚本(没有${1}),它可以正常工作。如果我尝试执行多次,带参数的脚本有时会起作用,有时则不起作用。我该如何修复我的代码?

bash
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.