Run a bash command after some simultaneous commands?

#!/bin/bash
command1 &
command2 &
command3 &

wait
command4

wait (without any arguments) will wait until all the backgrounded processes have exited.

The complete description of wait in the bash manual:

wait [-n] [n ...]

Wait for each specified child process and return its termination status. Each n may be a process ID or a job specification; if a job spec is given, all processes in that job's pipeline are waited for. If n is not given, all currently active child processes are waited for, and the return status is zero. If the -n option is supplied, wait waits for any job to terminate and returns its exit status. If n specifies a non-existent process or job, the return status is 127. Otherwise, the return status is the exit status of the last process or job waited for.