如何将Grep实现为CGI脚本?

时间:2010-05-05 21:15:07

标签: html c cgi

我很难弄清楚如何在我的CGI脚本中实现grep。基本上我会收到例如的值。来自HTML页面的1500。然后运行CGI脚本并将1500与文本文件进行比较。当它找到1500时,它会打印整行并将其显示在网页上。我想要一些关于如何做到这一点的提示和指示。我知道这涉及grep,但我真的不知道如何把它放进去。

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char *data;
long m,n;
printf("%s%c%c\n",
"Content-Type:text/html;charset=iso-8859-1",13,10);
printf("<TITLE>Webpage of Results</TITLE>\n");
printf("<H1>Temperatures</H1>\n");
data = getenv("QUERY_STRING");

HTML传递变量time = 1500。我理解(如果我错了,请纠正我)QUERY_STRING将包含1500?

2 个答案:

答案 0 :(得分:0)

对于whatever?query-string形式的网址,环境变量QUERY_STRING包含完整的query-string - 在您的情况下为time=1500或类似。

您需要记住,可能会有多个字段/值被传递,由&分隔。通过使用strtok(),您可以逐个检索查询字符串的各个部分,strcmp()可以将它们与其他字符串进行比较。

如果找到了正确的令牌,则需要使用文件:

答案 1 :(得分:0)

C中grep的一些非常直接的模拟是strstr()函数