Executar comandos no Runtime.exec

Olá a todos!

Preciso de ajuda para executar este comando dentro da minha aplicação java.

Ele lista um diretorio e jogo a saida dentro de um arquivo txt

Runtime.getRuntime().exec(“ls /dev/disk/by-id > /home/usuario/usb.txt”);

Quando rodo no terminal funciona mas dentro da aplicação não.

Assim

Runtime.getRuntime().exec(“gnome-terminal -x ls /dev/disk/by-id > /home/usuario/usb.txt”);

Mais tambem não deu, abre um terminal mas fecha e não executa o comando.

Já tentei assim:

Runtime.getRuntime().exec(“gnome-terminal -x sudo ls /dev/disk/by-id > /home/usuario/usb.txt”);

Mas pede a senha e não executa o comando.

Eu preciso deste comando dentro do programa,alguem já faz e pode me ajudar.