A Jenkins Admin can execute groovy scripts remotely by sending an HTTP POST request to /script/ url or /scriptText/.
curl example via bash
curl -d "script=<your_script_here>" https://jenkins/script # or to get output as a plain text result (no HTML) curl -d "script=<your_script_here>" https://jenkins/scriptText
curl submitting groovy file via bash
curl --data-urlencode "script=$(< ./somescript.groovy)" https://jenkins/scriptText
curl submitting groovy file providing username and password via bash
curl --user 'username:password' --data-urlencode "script=$(< ./somescript.groovy)" https://jenkins/scriptText
Jenkins CLI offers the possibility to execute groovy scripts remotely using groovy command or execute groovy interactivelly via groovysh.
java -jar jenkins-cli.jar -noCertificateCheck -s https://10.0.0.91/ groovy disableEnableJobsMatchingPattern.groovy jobPattern=build_git_auto disableOrEnable=disable --username 12345 --password banana
Reference
https://wiki.jenkins.io/display/JENKINS/Jenkins+Script+Console