Eu escreveria um roteiro ao longo destas linhas:
#!/bin/bash
APP=$1
NAME=$2
screen -ls 2>&1 | grep ".$NAME" > /dev/null
if [ $? != 0 ]; then
screen -dmS $NAME $APP
fi
Usado assim - <script-name> app1 /home/app1
Ele procurará a sessão da tela de execução com o nome dado (para a execução do usuário) e, se ela não encontrar tal, gerará uma nova.