Procurando ajuda para escapar de "&" na linha de comando do ADB - qualquer orientação seria muito apreciada!
Estou tentando extrair arquivos de livros .epub de um tablet Android executando o aplicativo B&N Nook. O aplicativo NOOK armazena arquivos de e-book em "/data/data/bn.ereader/files/B&N Downloads/Books" A string "B&N Downloads" está causando problemas nos comandos shell do ADB. Já tentei escapar do "&" e do "espaço" das seguintes formas...
$ ./adb shell cd ./data/data/bn.ereader/files/B&N Downloads/Books (comando original)
$ ./adb shell cd ./data/data/bn.ereader/files/B\&N\ Downloads/ Livros
$ ./adb shell cd ./data/data/bn.ereader/files/'B&N Downloads'/Livros
$ ./adb shell cd './data/data/bn.ereader/files/B&N Downloads/Livros'
$ ./adb shell cd ./data/data/bn.ereader/files/"B&N Downloads"/Livros
$ ./adb shell cd ./data/data/bn.ereader/files/B^&N^ Downloads/Livros
(que último da sugestão em outra resposta: Tentando dar "&" como parte do adb shell input text )
sempre dando o mesmo erro...
/system/bin/sh: N: não encontrado
/system/bin/sh: cd: /data/data/bn.ereader/files/B: Arquivo ou diretório inexistente
Computador ADB:
MacBookPro 9,2 (meados de 2012)
Versão do sistema: macOS 10.14.6 (18G9323) "Mojave"
Versão do kernel: Darwin 18.7.0.
Dispositivo Android de destino:
B&N Nook HD+ (executando CyanogenMod)
Versão do Android: 7.1.1
Versão do kernel: 3.0.101 (dmaces@gc-xenial #1)
Número da versão: cm_ovation-userdebug 7.1.1 NMF26Q 161222 chaves de teste
Também tentei isso em um Lenovo Tab M10 Plus 3ª geração com os mesmos resultados:
Versão do Android: 12
Versão do kernel: 4.14.186-ga2e751134649
Número da compilação: TB125FU_S000118_220927_ROW
[NOTA: Concluí minha tarefa original simplesmente executando um "pull" de toda a maldita árvore de diretórios acima da pasta "B&N Downloads" do problema, mas a questão de como escapar de "&" permanece]