Check if Script is already running:
http://forum.mikrotik.com/t/prevent-the-script-from-running-if-it-is-already-running/167618/3
Terminate other istances of the same Script. No matter what is the script name, just make unique the UniqueScriptID…
:local UniqueScriptID "QnJhdm8h"
/system script
:local ThisScriptName [get ([find where source~"$UniqueScriptID"]->0) name]
:local searchJobs [job find where script=$ThisScriptName]
:if ([:len $searchJobs] > 1) do={ :for idx from=0 to=[:len $searchJobs] step=1 do={ job remove ($searchJobs->$idx) } }
# simulating script running for 60 seconds
:delay 60s