From Newsgroup: comp.lang.awk
cgi example using awk:
server-side file.csv...
# name, email, address, region
Moe,
moe@microsoft.nul,123 Maple St,Anywhere USA Larry,
larry@mit.edu,Hofgartenstr 8,80539 Munchen
Curly,
curly@butterbean.io,1001 Ventura Blvd,Los Angeles CA
-----------------------------------------------------------
server-side cgi script...
#!/bin/sh
awk '
BEGIN {
FS = ","
print "Content-type: text/plain"
print ""
split(ENVIRON["QUERY_STRING"], a, "&")
b = a[1]
sub(/^name=/, "", b)
}
{
if (tolower($1) ~ tolower(b)) {
print $1 " <" $2 ">"
for(x = 3; x <= NF; x++) print $x
++e
}
}
END {if(!e) print b " not listed..."}' /var/www/cgi-bin/buddy.csv
# eof
browser query:
http://192.168.56.117/cgi-bin/buddy.awk?name=moe
output...
Moe <
moe@microsoft.nul>
123 Maple St
Anywhere USA
-----------------------------------------------------------
unix shell script using wget...
#!/bin/sh
IPA="192.168.56.117"
[ $# -eq 0 ] && {
cat <<ERR
error no argument specified...
usage example: buddy.sh curly
ERR
exit 1
}
wget -qO-
http://$IPA/cgi-bin/buddy.awk?name="$*"
# eof
command line query: buddy.sh larry
output...
Larry <
larry@mit.edu>
Hofgartenstr 8
80539 Munchen
-----------------------------------------------------------
win cmd script using wget...
@echo off
set IPA="192.168.56.117"
if "%~1"=="" goto end
wget -qO-
http://%IPA%/cgi-bin/buddy.awk?name="%*"
exit /b 0
:end
(
echo error no argument specified...
echo usage example: buddy.cmd curly
)
:: eof
command line query: buddy.cmd curly
output...
Curly <
curly@butterbean.io>
1001 Ventura Blvd
Los Angeles CA
--
:wq
Mike Sanders
--- Synchronet 3.20a-Linux NewsLink 1.114