Eu acho que você tem apenas que ativar a opção bash globstar , porque ela não está ativa por padrão no Ubuntu , como explicado a seguir.
A expressão /path/to/music/directory/{**/,}* contém duas construções de expansão: possui uma expansão de chave e, em seguida, uma expansão de nome de caminho.
Expansão de órtese
A expansão de chave é melhor explicada com um exemplo:
$ printf '%s\n' before-{a,bb,1,22}-after
before-a-after
before-bb-after
before-1-after
before-22-after
(Eu usei, aqui e a seguir, o comando printf '%s\n' item1 item2 etc.. que é como echo , mas imprime cada elemento em uma nova linha)
Você vê que cada elemento separado por vírgula nas chaves resulta em um elemento expandido.
O exemplo original, contendo entre chaves os elementos **/ e um elemento vazio, expande para
$ printf '%s\n' /path/to/music/directory/{**/,}*
/path/to/music/directory/**/*
/path/to/music/directory/*
Globstar
Mude agora para o bash glob ** , que é mencionado duas vezes no Página de manual do bash , ambos em relação à opção de shell globstar , e o significado é o seguinte:
Esta opção de shell não está ativa por padrão no Ubuntu:
$ shopt globstar
globstar off
Você pode ativá-lo com
shopt -s globstar
(use shopt -u globstar para desativá-lo).
Se tivermos a seguinte estrutura de diretório:
$ find first/ | sort
first/
first/aaa
first/second
first/second/bbb01
first/second/bbb02
first/second/third
first/second/third/ccc1
first/second/third/ccc2
first/second/third/ccc3
poderíamos ter as seguintes expansões:
$ printf '%s\n' first/**/a*
first/aaa
$ printf '%s\n' first/**/b*
first/second/bbb01
first/second/bbb02
$ printf '%s\n' first/**/c*
first/second/third/ccc1
first/second/third/ccc2
first/second/third/ccc3
para que você possa ver que ** é capaz de se expandir para mais de um elemento de nome de caminho.