Hi Roger,
Just tested successfully on 4.17 in the following way:
for i in $(rd projects list | grep -E -o '[a-zA-Z0-9_$%*@#]{10,}'); do echo $i; rd executions list -p $i; doneNow, to run this on the Rundeck commands section you need to “escape” the ' character in the following way:
for i in $(rd projects list | grep -E -o '''[a-zA-Z0-9_$%*@#]{10,}'''); do echo $i; rd executions list -p $i; doneCheck the result here.
Hope it helps!

Hi Roger,
After some research, the “scheduled” status only happens when you schedule a job using the “Run job later” run option. That doesn’t happen when you use the job schedule tab (cron or simple). That’s the default behavior and this isn’t collected by the rd executions -p MyProject command, this command only gets the current executions (scheduled or not).
But drilling down the Rundeck API and playing a bit with the JQ tool, I made a call that prints only the running scheduled jobs based on the “executionType” JSON answer. Feel free to test and modify it:
#!/bin/sh # protocol protocol="http" # basic rundeck info rdeck_host="localhost" rdeck_port="4440" rdeck_api="45" rdeck_token="Uq4V5n9EGFKU0LjNEVwaaYeDvb3sC89y" rdeck_project="ProjectEXAMPLE" curl -s --location --request GET "$protocol://$rdeck_host:$rdeck_port/api/$rdeck_api/project/$rdeck_project/executions/running" --header "Accept: application/json" --header "X-Rundeck-Auth-Token:$rdeck_token" -- header "Content-Type: application json" | jq -r '.executions[] | select(.executionType=="scheduled") | .job | "\(.id) \(.name)"'This prints the Job ID and Job Name of scheduled jobs running. Of course, this approach is improvable (e.g. you can get a list of all projects in a “for” loop and then apply this to every single project).
Regards.