From: Stephen Dolan Date: Tue, 18 Sep 2012 22:37:46 +0000 (+0100) Subject: Usage messages if jq is run with no arguments. X-Git-Tag: jq-1.1~23 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=305059ff9f630b7fb140ef61fab5613483a75ff0;p=jq Usage messages if jq is run with no arguments. Beats segfaulting. --- diff --git a/main.c b/main.c index 776c957..92a7c65 100644 --- a/main.c +++ b/main.c @@ -8,7 +8,20 @@ #include "parser.h" #include "execute.h" +static const char* progname; + +static void usage() { + fprintf(stderr, "\njq - commandline JSON processor\n"); + fprintf(stderr, "Usage: %s \n\n", progname); + fprintf(stderr, "For a description of how to write jq filters and\n"); + fprintf(stderr, "why you might want to, see the jq documentation at\n"); + fprintf(stderr, "http://stedolan.github.com/jq\n\n"); + exit(1); +} + int main(int argc, char* argv[]) { + if (argc) progname = argv[0]; + if (argc != 2 || !strcmp(argv[1], "--help") || !strcmp(argv[1], "--version")) usage(); struct bytecode* bc = jq_compile(argv[1]); if (!bc) return 1;