Nos testes, se a substituição do comando $(adb -s ...)
gerar uma sequência de várias palavras, o shell a tratará como um erro de sintaxe. Você terá que citar as expansões:
[ "$(adb -s ...)" = *"Is the system running?"* ]
O resultado de uma substituição de comando sem aspas passará por divisão e globalização de nome de arquivo, exatamente como ocorre em uma expansão de variável sem aspas. Citando a expansão evita isso. No seu caso, é a divisão que causa problemas.
Com a substituição do comando expandida, o teste pode parecer algo como
if [ word1 word2 word3 = *"some string"* ]
Este é claramente um erro de sintaxe.