If you run the script on the command line without arguments, you will be placed into an "offline" mode, in which name/value pairs can be entered one-by-one. When you press Ctrl-D, the script runs. For example:
% birthday (offline mode: enter name=value pairs on standard input) birthday=6/4/65 ^D Content-type: text/html <P>Your birthday is 6/4/65.</P>
You can also supply the name/value parameters directly on the command line. For example:
% test birthday=6/4/65 Content-type: text/html <P>Your birthday is 6/4/65.</P>
Multiple values can be separated by spaces (as separate arguments on the command line) or by ampersands (as in URL-encoded syntax). In fact, you can use URL-encoded syntax on the command line. This makes it easy to supply raw CGI input to the script for testing purposes. Just remember to protect the ampersand from the shell.
% test 'birthday=6%2f4%2f65&name=Fred%20Flintstone' Content-type: text/html <P>Fred Flintstone, your birthday is 6/4/65.</P>
Copyright © 2002 O'Reilly & Associates. All rights reserved.