Estou enviando resultados de um comando shell do Android para um arquivo, com MS-windows cmd via ADB.exe.
Ele produz os resultados corretos, mas estou recebendo uma linha extra entre cada resultado. Parece normal no cmd interativo (sem linhas extras), mas quando é salvo em um arquivo, as linhas adicionais aparecem.
Estou usando o Notepad++ para visualizar a saída do arquivo. Ao visualizar todos os símbolos, aparece um CR (carriage return) no final de cada linha impressa e um CR LF para cada linha em branco.
É possível enviar os resultados para um arquivo sem linhas extras e, em caso afirmativo, o que pode estar causando isso?
Interativamente, saída direta para o terminal
D:\>adb shell "ls -l"
drwxr-xr-x root root 2009-12-31 19:00 acct
drwxrwx--x system cache 2020-03-12 07:14 cache
lrwxrwxrwx root root 1969-12-31 19:00 charger -> /sbin/healthd
dr-x------ root root 2009-12-31 19:00 config
Redirecionando para arquivo
D:\>adb shell "ls -l" > test.log
drwxr-xr-x root root 2009-12-31 19:00 acct
drwxrwx--x system cache 2020-03-12 07:14 cache
lrwxrwxrwx root root 1969-12-31 19:00 charger -> /sbin/healthd
dr-x------ root root 2009-12-31 19:00 config
Responder1
Tentar
adb shell -T "ls -l" > test.log
ou, se reclamar que error: device only supports allocating a pty
:
adb shell "ls -l >/data/local/tmp/list"; adb pull /data/local/tmp/list test.log
-t
Nem todos os dispositivos suportam opções e inspiração ssh -T
, mesmo que o seu adb
programa cliente suporte.
Isso não é específico do Windows: mesmo em um sistema Unix, adb shell "ls -l" > test.log
criará um arquivo com retornos de carro extras indesejáveis no final das linhas.