【发布时间】:2009-10-14 06:39:38
【问题描述】:
在 shell 脚本中,我们可以在 unix 上使用 sqlplus 连接到数据库。 我可以在 awk 脚本中执行相同的操作吗? 我需要在 awk 脚本中访问选择查询的输出。这可能吗?
【问题讨论】:
在 shell 脚本中,我们可以在 unix 上使用 sqlplus 连接到数据库。 我可以在 awk 脚本中执行相同的操作吗? 我需要在 awk 脚本中访问选择查询的输出。这可能吗?
【问题讨论】:
我会进行查询并将其输出提供给 awk:
sqlplus 'select onething from another' | awk '{ weave awk magic here }'
就像任何其他命令一样:
pax> ls -alF | awk '{print $9}'
file1.txt
file2.txt
my_p0rn_dir/
【讨论】:
只需为您的 SQL 数据库使用某种命令行客户端(如果可用)并将输出通过管道传输到 awk。
例如with sqlite(我不知道客户端 SQL*Plus 有什么):
echo "select * from foo;" | sqlite3 file.db | awk ...
awk 做不到。这是 UNIX 工具的理念,您可以使用许多小工具来完成一项任务并将它们连接在一起,而不是使用少数工具来完成许多任务。
【讨论】: