我有这段代码:
ColumnInformation=`sqlite3 $database "PRAGMA table_info($table);"`
它完美无缺,但我需要添加if
语句:
if [$table != "Order"]; then
ColumnInformation=`sqlite3 $database "PRAGMA table_info($table);"`
else
ColumnInformation=`sqlite3 $database "PRAGMA table_info('Order');"`
fi
它引发command not found
错误。你能告诉我为什么吗?
最好,Tomek
答案 0 :(得分:2)
[
和]
两侧可能缺少空间,你需要使用“反引号”来获取子命令的输出:
if [ $table != "Order" ]; then
ColumnInformation=`sqlite3 $database "PRAGMA table_info('$table');"`
else
ColumnInformation=`sqlite3 $database "PRAGMA table_info('Order');"`
fi
然而,无论如何,测试似乎毫无意义,因为$table
在第二种情况下是“订单”。另请注意,在第一种情况下,您遗漏了$table
周围的单引号。