#!/bin/bash -e rand=$(tr -dc 'a-f0-9' < /dev/urandom | head -c 8) args=() while getopts "s:e:d:cnw" opt do case "$opt" in s) slice="$OPTARG";; e) args+=("--setenv=$OPTARG");; d) args+=("--working-directory=$OPTARG");; c) args+=("--scope");; n) args+=("--no-block");; w) args+=("--wait");; *) shift;; esac done shift $((OPTIND-1)) if [ -z "$slice" ]; then slice=app fi exec systemd-run \ --user \ --collect \ --slice="$slice" \ --unit="$slice-$1-$rand" \ ${args[@]} -- "$@"