Language

Run Bash scripts online, without a crontab

Paste a Bash script and Waiso runs it in an isolated sandbox, keeping its output and logs. Give it a schedule, an HTTP endpoint or a place in a flow — no machine to keep.

Arguments are the inputs

name="$1" declares a required input and count="${2:-5}" an optional one whose default gives its type. Everything printed is a log; the last line printed is the result, unless you call waiso_result.

Learn more →
greet.sh
#!/bin/bash
name="$1"
count="${2:-3}"

echo "greeting $name $count times"
waiso_result "{\"name\": \"$name\", \"count\": $count}"

The library is already loaded

No source line needed: waiso_run, waiso_flow, waiso_state_get and waiso_state_set are there in every run. There are no packages to install — a script uses the system’s commands.

Learn more →

A cron job you can watch

Publish the script and schedule it every minute, hour or day, call it through an HTTP endpoint, or run it as a flow step. A non-zero exit code fails the run and can send an alert.

Learn more →

Questions

How do I return JSON from Bash?

Print it as the last line, or pass it to waiso_result. A last line that is valid JSON is the result as JSON; anything else is text.

Can a Bash script use curl to call an API?

No. Scripts run with no network access. Use a flow’s HTTP Request step for outside calls and pass its output to the script.

Can I pick the Bash version?

No. Bash scripts run on the one version the worker carries and do not record a version.

Related

Get started today

Ready to ship some scripts?

Create an account in seconds — no installers, nothing to set up.
Start building, testing and running your scripts right away.

  • Free to start
  • Self-host or cloud
  • Production ready