Проверьте, существует ли каталог на SD-карте Android с Bash - PullRequest
3 голосов
/ 16 августа 2011

Я хотел бы проверить, существует ли каталог на SD-карте устройства Android с помощью bash. Мне известно, что на аналогичный вопрос здесь был дан ответ: Проверьте, существует ли каталог в сценарии оболочки Разница в том, что когда я делаю

if [ -e /sdcard/myDir ]; then
     # magic
fi

проверяется, существует ли / sdcard / myDir на моем компьютере, а не на телефоне. Как я могу проверить, существует ли папка на телефоне?

Заранее спасибо!

Ответы [ 2 ]

3 голосов
/ 04 марта 2015

Вы могли бы сделать следующее:

if [ `adb shell "if [ -e /sdcard/myDir ]; then echo 1; fi"` ]; then 
   echo "Folder exists";
else
   echo "Folder does not exist";
fi
3 голосов
/ 16 августа 2011

Если я вас правильно понял, попробуйте:

adb shell

... и затем введите свои команды оболочки на устройстве. Я не совсем уверен, доступен ли bash на стандартном устройстве Android. Могу поспорить, что установлены только простые инструменты busybox.

Также обратите внимание, что существует очень ограниченный набор каталогов, к которым вы сможете получить доступ таким образом на некорневом устройстве.

UPDATE: Точнее, если вам нужно выполнить какой-либо сценарий оболочки на удаленном устройстве, сначала подготовьте сценарий, скажем foo.sh, а затем выполните:

adb push foo.sh /sdcard/
adb shell sh /sdcard/foo.sh

Это должно сработать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...