bash 亚行 shell sqlite3 脚本
bash ADB shell sqlite3 script
我在使用这个简单的 bash 脚本时遇到问题。下面是我试图开始工作的简单脚本:
#!/bin/sh
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db "SELECT programs.title FROM programs"
我收到以下错误:
Error: near "SELECT": syntax error
如果我 运行 终端中的命令我得到正确的输出。我也试过把SELECT改成select,还是一样的问题。 运行 在终端中手动如下:
adb shell
sqlite3 /data/data/com.android.providers.tv/databases/tv.db
sqlite> SELECT programs.title FROM programs;
*OUTPUT*
给出正确的输出。
有人知道我做错了什么吗?
关于@Jetchisel 的建议,请参阅下面我尝试但没有成功的内容:
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db "SELECT programs.title FROM programs;"
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db "SELECT programs.title FROM programs;";
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db "SELECT programs.title FROM programs";
这是一个简单的修复,见下文:
#!/bin/bash
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db '"SELECT programs.title FROM programs;"'
需要在查询周围添加单引号。
我在使用这个简单的 bash 脚本时遇到问题。下面是我试图开始工作的简单脚本:
#!/bin/sh
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db "SELECT programs.title FROM programs"
我收到以下错误:
Error: near "SELECT": syntax error
如果我 运行 终端中的命令我得到正确的输出。我也试过把SELECT改成select,还是一样的问题。 运行 在终端中手动如下:
adb shell
sqlite3 /data/data/com.android.providers.tv/databases/tv.db
sqlite> SELECT programs.title FROM programs;
*OUTPUT*
给出正确的输出。
有人知道我做错了什么吗?
关于@Jetchisel 的建议,请参阅下面我尝试但没有成功的内容:
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db "SELECT programs.title FROM programs;"
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db "SELECT programs.title FROM programs;";
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db "SELECT programs.title FROM programs";
这是一个简单的修复,见下文:
#!/bin/bash
adb shell sqlite3 /data/data/com.android.providers.tv/databases/tv.db '"SELECT programs.title FROM programs;"'
需要在查询周围添加单引号。