Ruby escape argumento ou string ARGV como argumento para o comando shell

Ok, isso está me deixando louco:

`ls #{"/media/music/Miles Davis"}`

falha devido ao espaço entre "Miles" e "Davis"

Digo eu escrevo um script ruby e um usuário passa o caminho do arquivo como argumento. Como faço para escapar e alimentar um comando de shell-out. Sim, sim, eu sei, o descasque deve ser evitado. Mas este é um exemplo artificial, eu ainda preciso disso.

Eu fariasystem("ls", ARGV[0]), mas não retorna a saída stdout de ls como uma string, que é o que os backticks fazem be

Como escapar do que você inserir em um shellout?

questionAnswers(3)

yourAnswerToTheQuestion