1

Я пытаюсь передать файлы из команды find в adb push следующим образом:

find . -name "test0[4-8]*.py" -exec adb push {} \; /storage/emulated/0/

Я получаю сообщение об ошибке find: paths must precede expression: /storage/emulated/0/

Как я могу указать, что /storage/emulated/0/ не путь.

2 ответа2

1

Точка с запятой, обозначающая конец команды exec должна быть в конце предиката exec :

find . -name "test0[4-8]*.py" -exec adb push {} /storage/emulated/0/ \;
1

Я предполагаю, что /storage /emulated / 0 / это путь на удаленном устройстве? Так что это должно быть частью команды, ваш \; предшествует этому.

find . -name "test0[4-8]*.py" -exec adb push {} /storage/emulated/0/ \;

если это все еще вызывает проблемы, поставьте "/" для каждого "/", чтобы избежать их. Эффективно все от -exec до \; отправляется в вложенную оболочку с заменой {} на путь к каждому найденному файлу.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .