Skip to content

Commit 160ef6e

Browse files
authored
v-import-cpanel Import cronjobs from the cpanel backup (hestiacp#4150)
Import the cronjobs from the cpanel backup
1 parent 583a205 commit 160ef6e

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

bin/v-import-cpanel

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,36 @@ if [ "$mx" = 'yes' ]; then
365365
done
366366
fi
367367

368+
##################
369+
# Cron Jobs
370+
tput setaf 2
371+
echo ""
372+
echo "Start Restoring Cron Jobs for user $new_user"
373+
tput sgr0
374+
375+
CRON_DIR="$main_dir/cron"
376+
cd "$CRON_DIR"
377+
378+
CRON_FILE="${new_user}"
379+
if [ -f "$CRON_FILE" ] && [ -s "$CRON_FILE" ]; then
380+
while IFS= read -r cron_job || [ -n "$cron_job" ]; do
381+
[[ "$cron_job" =~ ^(#.*|\s*|MAILTO=.*|SHELL=.*)$ ]] && continue
382+
383+
min=$(echo "$cron_job" | awk '{print $1}')
384+
hour=$(echo "$cron_job" | awk '{print $2}')
385+
day=$(echo "$cron_job" | awk '{print $3}')
386+
month=$(echo "$cron_job" | awk '{print $4}')
387+
dow=$(echo "$cron_job" | awk '{print $5}')
388+
cmd=$(echo "$cron_job" | awk '{for (i=6; i<=NF; i++) printf $i " "; print ""}')
389+
390+
$BIN/v-add-cron-job $new_user "$min" "$hour" "$day" "$month" "$dow" "$cmd"
391+
done < "$CRON_FILE"
392+
echo "Cron jobs restored for user $new_user."
393+
else
394+
echo "No cron jobs file found or it is empty for user $new_user."
395+
fi
396+
397+
368398
rm -rf "$tmpdir"
369399

370400
echo "##############################"

0 commit comments

Comments
 (0)