(Para o Ubuntu 12.04) O problema aqui é que com o seu script o bash abrirá um terminal gnome e então executará o comando no seu terminal atual em vez do recém-aberto (se é que você está realmente tentando fazer).
Nota: também como sugerido por @unorthodox grammar &
deve ser usado no final do comando que você não deseja esperar (permitindo que eles sejam executados em segundo plano). No entanto, curiosamente, esse não é o problema, pelo menos no Ubuntu 12.04. Mas talvez em outros sabores do Ubuntu isso possa ser um problema.
Você pode executar os comandos no recém-aberto gnome-terminal usando o seguinte comando:
gnome-terminal -e "ls -a /examplefolder"
ou
gnome-terminal --command "ls -a /examplefolder"
No entanto, isso fecha o terminal assim que os comandos são executados e se você quiser ver o resultado desses comandos, não será possível. Note que o gnome-terminal não foi projetado para este caso de uso (ver os resultados em um gnome-terminal recém-aberto a partir do script). Uma das soluções possíveis é a resposta é o seguinte:
Deixe o gnome-terminal executar o bash e dizer ao bash para executar seus comandos e depois executar o bash
gnome-terminal -e "bash -c \"echo foo; echo bar; exec bash\""
ou
gnome-terminal -x bash -c "echo foo; echo bar; bash"
O exec bash no final é necessário porque bash -c
terminará assim que os comandos estiverem prontos. exec
faz com que o processo em execução seja substituído pelo novo processo, caso contrário, você terá dois processos bash em execução.
Você pode consultar esta resposta para outras soluções alternativas.