我有一个脚本(在备份目录中移动日志文件)位于在 ServerA 中运行的共享文件夹中。它正在按预期工作。我计划在几台服务器上运行这个脚本,即ServerB、ServerC、ServerD。但是,由于该脚本位于共享文件夹中,因此如果所有服务器同时运行该脚本,可能会导致问题。你能给些建议么?我正在考虑放置一个标志来检查脚本是否正在使用。我还不确定如何。
脚本
TIMESTAMP=`date "+%Y.%m.%d-%H.%M"`
LOGS="$(cat Apps.txt)"
LOGSUFFIX=".log"
APPLOGS_DIR="/APPSDIR"
BACKUP_DIR="/BACKUPDIR"
for LOG in ${LOGS}
do
if [ -f "${APPLOGS_DIR}/${LOG}${LOGSUFFIX}" ]
then
gzip "${APPLOGS_DIR}/${LOG}${LOGSUFFIX}"
mv "${APPLOGS_DIR}/${LOG}${LOGSUFFIX}.gz" "${BACKUP_DIR}/${LOG}_${TIMESTAMP}.gz"
echo "$Logs moved to backup directory "
else
echo "No logs"
fi
done