Ошибки запуска sqlite через оболочку adb - PullRequest
0 голосов
/ 27 марта 2019

Запуск из командной строки на ПК с Windows 10, и у меня проблема с кавычками:

  • adb shell su -c "sqlite3 /data/data/com.android.chrome/app_chrome/Default/Cookies 'select count(*) from cookies;'"
    • sush: синтаксическая ошибка: '(' неожиданная
  • adb shell su -c sqlite3 /data/data/com.android.chrome/app_chrome/Default/Cookies 'select count(*) from cookies;'
    • sush: синтаксическая ошибка: '(' неожиданная
  • adb shell su -c sqlite3 /data/data/com.android.chrome/app_chrome/Default/Cookies "select count(*) from cookies;"
    • / system / bin / sh: синтаксическая ошибка: '(' неожиданная
  • Я попробовал запрос, который не содержал паренов, но он тоже не запустился:
    • adb shell su -c "sqlite3 /data/data/com.android.chrome/app_chrome/Default/Cookies 'select * from cookies;'"
      • Ошибка: рядом с «select»: синтаксическая ошибка
  • Я могу запустить другие команды sqlite3 из оболочки adb
    • adb shell su -c "sqlite3 /data/data/com.android.chrome/app_chrome/Default/Cookies .schema"
      • , который работает с кавычками или без них.

А заходя в ADB shell работает:

>adb shell
/ $ su
/ # sqlite3 /data/data/com.android.chrome/app_chrome/Default/Cookies 'select count(*) from cookies;'
3238

Я просто хочу получить результаты запроса из командной строки.
Чего мне не хватает?

1 Ответ

0 голосов
/ 29 мая 2019

Попробуйте это:

adb shell su -c sqlite3 /data/data/com.android.chrome/app_chrome/Default/Cookies "\"select count(*) from cookies;\""

или

query="\"select count(*) from cookies;\""
adb shell su -c sqlite3 /data/data/com.android.chrome/app_chrome/Default/Cookies "$query"

Полагаю, проблема в двойных кавычках. Я до сих пор не совсем уверен, почему эти двойные кавычки нужны в запросе, но это наверняка сработает.

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