diff --git a/ipk-source/sdxpinn-quecmanager-beta/CONTROL/prerm b/ipk-source/sdxpinn-quecmanager-beta/CONTROL/prerm index f85f1ee..4015998 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/CONTROL/prerm +++ b/ipk-source/sdxpinn-quecmanager-beta/CONTROL/prerm @@ -3,29 +3,40 @@ echo "Stopping QuecManager Services and removing from rc.local..." # Remove services from rc.local if present -sed -i '/\/www\/cgi-bin\/home\/log_signal_metrics\.sh &/d' /etc/rc.local -sed -i '/\/www\/cgi-bin\/settings\/change_sms_code\.sh &/d' /etc/rc.local +if sed -i '/\/www\/cgi-bin\/home\/log_signal_metrics\.sh &/d' /etc/rc.local; then + echo "Removed log_signal_metrics.sh entry from rc.local." +else + echo "Warning: Failed to remove log_signal_metrics.sh entry or it was not found." +fi -# Define an array of scripts to check and stop -SCRIPTS=( - "/www/cgi-bin/home/log_signal_metrics.sh" - "/www/cgi-bin/settings/change_sms_code.sh" -) +if sed -i '/\/www\/cgi-bin\/settings\/change_sms_code\.sh &/d' /etc/rc.local; then + echo "Removed change_sms_code.sh entry from rc.local." +else + echo "Warning: Failed to remove change_sms_code.sh entry or it was not found." +fi + +# Define a list of scripts to check and stop +SCRIPTS=" +/www/cgi-bin/home/log_signal_metrics.sh +/www/cgi-bin/settings/change_sms_code.sh +" # Loop through each script, check if it's running, and kill it if necessary -for SCRIPT in "${SCRIPTS[@]}"; do +echo "Checking and stopping running scripts..." +for SCRIPT in $SCRIPTS; do PID=$(pgrep -f "$SCRIPT") if [ -n "$PID" ]; then echo "Stopping $SCRIPT (PID: $PID)..." if kill -TERM "$PID"; then echo "Successfully stopped $SCRIPT." else - echo "Failed to stop $SCRIPT." + echo "Error: Failed to stop $SCRIPT." fi else echo "$SCRIPT is not running. Nothing to stop." fi done +echo "Cleanup complete." exit 0