Estoy enviando resultados de un comando de shell de Android a un archivo, con cmd de MS-Windows a través de ADB.exe.
Genera los resultados correctos, pero aparece una línea adicional entre cada resultado. Parece normal en cmd interactivo (sin líneas adicionales), pero cuando se guarda en un archivo, aparecen líneas adicionales.
Estoy usando Notepad++ para ver el resultado del archivo. Al ver todos los símbolos, muestra un CR (retorno de carro) al final de cada línea impresa y un CR LF para cada línea en blanco.
¿Es posible enviar los resultados a un archivo sin líneas adicionales y, de ser así, qué podría estar causando esto?
De forma interactiva, salida directa al 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
Redirigir al archivo
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
Respuesta1
Intentar
adb shell -T "ls -l" > test.log
o, si se queja de que error: device only supports allocating a pty
:
adb shell "ls -l >/data/local/tmp/list"; adb pull /data/local/tmp/list test.log
No todos los dispositivos admiten las opciones inspiradas en ssh -t
, -T
incluso si su adb
programa cliente sí lo hace.
Esto no es específico de Windows: incluso en un sistema Unix, adb shell "ls -l" > test.log
creará un archivo con retornos de carro adicionales no deseados al final de las líneas.