Вам не нужно экранировать символ "
для ввода команды для adb shell
.
"C:\Program Files\Microvirt\MEmu\adb.exe" -s 127.0.0.1:21503 shell "dd if='/sdcard/screen.dump' bs=4 count=1 skip=54950 2>/dev/null | hd"
будет в порядке.
Кроме того, ваш комментарий сказал:
Эта папка уже находится в моей переменной окружения PATH.
Тогда вам не нужно указывать полный путь к adb
.
adb -s 127.0.0.1:21503 shell "dd if='/sdcard/screen.dump' bs=4 count=1 skip=54950 2>/dev/null | hd"
тоже в порядке.
Сообщение об ошибке,
/ system / bin / sh: dd if = '/ sdcard / screen.dump' bs = 4 count = 1 skip = 54950 2> / dev / null | не найден
указывает на то, что не существует исполняемого файла с именем "dd if = '/ sdcard ... null | hd", но вы просто нуждаетесь в них в качестве параметров, а не полного имени исполняемого файла.
Для вашей первой попытки,
"C:\Program Files\Microvirt\MEmu\adb.exe" -s 127.0.0.1:21503 shell dd if='/sdcard/screen.dump' bs=4 count=1 skip=54950 2>/dev/null | hd
Эта команда будет относиться к hd
за пределами adb shell
, она будет выполняться из командной строки Windows.
Обновление : мы можем использовать параметр od
или hd
для выполнения некоторых трюков.
Например, на моем устройстве busybox od
имеет параметр [-t TYPE]
, [-A RADIX]
, [-N SIZE]
и [-j SKIP]
, тогда на моем телефоне я могу сделать
adb shell od -N4 -j54950 -tx1 -Ax /sdcard/screen.dump