Adjusted psql echoing options (-a and -e)

This commit is contained in:
Peter Eisentraut 2000-02-13 21:45:15 +00:00
parent a2226ad237
commit 9672d38f91
9 changed files with 57 additions and 37 deletions

View File

@ -1,5 +1,5 @@
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/ref/psql-ref.sgml,v 1.24 2000/02/10 20:08:55 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/ref/psql-ref.sgml,v 1.25 2000/02/13 21:45:13 petere Exp $
Postgres documentation
-->
@ -609,7 +609,7 @@ Tue Oct 26 21:40:57 CEST 1999
<note>
<para>
If you want to see the lines on the screen as they are read you must set
the variable <envar>ECHO</envar> to <literal>full</literal>.
the variable <envar>ECHO</envar> to <literal>all</literal>.
</para>
</note>
</listitem>
@ -1189,6 +1189,18 @@ Access permissions for database "test"
<para>
<variablelist>
<varlistentry>
<term>-a, --echo-all</term>
<listitem>
<para>
Print all the lines to the screen as they are read. This is more useful for
script processing rather than interactive mode.
This is equivalent to setting the variable <envar>ECHO</envar> to <literal>all</literal>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>-A, --no-align</term>
<listitem>
@ -1234,11 +1246,12 @@ Access permissions for database "test"
<varlistentry>
<term>-e, --echo</term>
<term>-e, --echo-queries</term>
<listitem>
<para>
In non-interactive mode, all lines are printed to the screen as they are read.
This is equivalent to setting the variable <envar>ECHO</envar> to <literal>full</literal>.
Show all queries that are sent to the backend.
This is equivalent to setting the variable <envar>ECHO</envar>
to <literal>queries</literal>.
</para>
</listitem>
</varlistentry>
@ -1621,12 +1634,12 @@ bar
<term><envar>ECHO</envar></term>
<listitem>
<para>
If set to <quote><literal>full</literal></quote>, all lines entered or from a script
If set to <quote><literal>all</literal></quote>, all lines entered or from a script
are written to the standard output before they
are parsed or executed. To specify this on program startup, in conjunction with the
<option>-f</option> option perhaps, use the switch <option>-e</option>.
If set to <quote><literal>brief</literal></quote>, <application>psql</application>
merely prints all queries as they are sent to the backend.
are parsed or executed. To specify this on program startup, use the switch
<option>-a</option>. If set to <quote><literal>queries</literal></quote>,
<application>psql</application> merely prints all queries as they are sent to the
backend. The option for this is <option>-e</option>.
</para>
</listitem>
</varlistentry>

View File

@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
* $Header: /cvsroot/pgsql/src/bin/psql/common.c,v 1.12 2000/02/07 23:10:06 petere Exp $
* $Header: /cvsroot/pgsql/src/bin/psql/common.c,v 1.13 2000/02/13 21:45:14 petere Exp $
*/
#include <c.h>
#include "common.h"
@ -382,7 +382,7 @@ SendQuery(const char *query)
else
{
const char * var = GetVariable(pset.vars, "ECHO");
if (var && strcmp(var, "brief")==0)
if (var && strncmp(var, "queries", strlen(var))==0)
puts(query);
}

View File

@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
* $Header: /cvsroot/pgsql/src/bin/psql/help.c,v 1.17 2000/02/10 20:08:56 petere Exp $
* $Header: /cvsroot/pgsql/src/bin/psql/help.c,v 1.18 2000/02/13 21:45:14 petere Exp $
*/
#include <c.h>
#include "help.h"
@ -72,7 +72,7 @@ usage(void)
puts( "Usage:");
puts( " psql [options] [dbname [username]]\n");
puts( "Options:");
/* puts( " -a Echo all input from script");*/
puts( " -a Echo all input from script");
puts( " -A Unaligned table output mode (-P format=unaligned)");
puts( " -c <query> Run only single query (or slash command) and exit");

View File

@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
* $Header: /cvsroot/pgsql/src/bin/psql/mainloop.c,v 1.18 2000/02/10 20:08:56 petere Exp $
* $Header: /cvsroot/pgsql/src/bin/psql/mainloop.c,v 1.19 2000/02/13 21:45:14 petere Exp $
*/
#include <c.h>
#include "mainloop.h"
@ -217,7 +217,7 @@ MainLoop(FILE *source)
/* echo back if flag is set */
var = GetVariable(pset.vars, "ECHO");
if (var && strcmp(var, "full")==0)
if (var && strcmp(var, "all")==0)
puts(line);
fflush(stdout);

View File

@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
* $Header: /cvsroot/pgsql/src/bin/psql/startup.c,v 1.22 2000/02/07 23:10:06 petere Exp $
* $Header: /cvsroot/pgsql/src/bin/psql/startup.c,v 1.23 2000/02/13 21:45:14 petere Exp $
*/
#include <c.h>
@ -280,17 +280,17 @@ parse_options(int argc, char *argv[], struct adhoc_opts * options)
#ifdef HAVE_GETOPT_LONG
static struct option long_options[] =
{
{"echo-all", no_argument, NULL, 'a'},
{"no-align", no_argument, NULL, 'A'},
{"command", required_argument, NULL, 'c'},
{"dbname", required_argument, NULL, 'd'},
{"echo", no_argument, NULL, 'e'},
{"echo-queries", no_argument, NULL, 'e'},
{"echo-hidden", no_argument, NULL, 'E'},
{"file", required_argument, NULL, 'f'},
{"field-separator", required_argument, NULL, 'F'},
{"host", required_argument, NULL, 'h'},
{"html", no_argument, NULL, 'H'},
{"list", no_argument, NULL, 'l'},
{"no-readline", no_argument, NULL, 'n'},
{"output", required_argument, NULL, 'o'},
{"port", required_argument, NULL, 'p'},
{"pset", required_argument, NULL, 'P'},
@ -320,18 +320,20 @@ parse_options(int argc, char *argv[], struct adhoc_opts * options)
memset(options, 0, sizeof *options);
#ifdef HAVE_GETOPT_LONG
while ((c = getopt_long(argc, argv, "Ac:d:eEf:F:lh:Hno:p:P:qRsStT:uU:v:VWx?", long_options, &optindex)) != -1)
while ((c = getopt_long(argc, argv, "aAc:d:eEf:F:lh:Hno:p:P:qRsStT:uU:v:VWx?", long_options, &optindex)) != -1)
#else /* not HAVE_GETOPT_LONG */
/*
* Be sure to leave the '-' in here, so we can catch accidental long
* options.
*/
while ((c = getopt(argc, argv, "Ac:d:eEf:F:lh:Hno:p:P:qRsStT:uU:v:VWx?-")) != -1)
while ((c = getopt(argc, argv, "aAc:d:eEf:F:lh:Hno:p:P:qRsStT:uU:v:VWx?-")) != -1)
#endif /* not HAVE_GETOPT_LONG */
{
switch (c)
{
case 'a':
SetVariable(pset.vars, "ECHO", "all");
break;
case 'A':
pset.popt.topt.format = PRINT_UNALIGNED;
break;
@ -346,10 +348,10 @@ parse_options(int argc, char *argv[], struct adhoc_opts * options)
options->dbname = optarg;
break;
case 'e':
SetVariable(pset.vars, "ECHO", "full");
SetVariable(pset.vars, "ECHO", "queries");
break;
case 'E':
SetVariable(pset.vars, "ECHO_HIDDEN", "");
SetVariableBool(pset.vars, "ECHO_HIDDEN");
break;
case 'f':
options->action = ACT_FILE;
@ -402,16 +404,16 @@ parse_options(int argc, char *argv[], struct adhoc_opts * options)
break;
}
case 'q':
SetVariable(pset.vars, "QUIET", "");
SetVariableBool(pset.vars, "QUIET");
break;
case 'R':
pset.popt.topt.recordSep = xstrdup(optarg);
break;
case 's':
SetVariable(pset.vars, "SINGLESTEP", "");
SetVariableBool(pset.vars, "SINGLESTEP");
break;
case 'S':
SetVariable(pset.vars, "SINGLELINE", "");
SetVariableBool(pset.vars, "SINGLELINE");
break;
case 't':
pset.popt.topt.tuples_only = true;

View File

@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
* $Header: /cvsroot/pgsql/src/bin/psql/variables.c,v 1.5 2000/01/29 16:58:49 petere Exp $
* $Header: /cvsroot/pgsql/src/bin/psql/variables.c,v 1.6 2000/02/13 21:45:14 petere Exp $
*/
#include <c.h>
#include "variables.h"
@ -111,6 +111,14 @@ SetVariable(VariableSpace space, const char *name, const char *value)
bool
SetVariableBool(VariableSpace space, const char *name)
{
return SetVariable(space, name, "");
}
bool
DeleteVariable(VariableSpace space, const char *name)
{

View File

@ -3,17 +3,13 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
* $Header: /cvsroot/pgsql/src/bin/psql/variables.h,v 1.5 2000/01/29 16:58:49 petere Exp $
* $Header: /cvsroot/pgsql/src/bin/psql/variables.h,v 1.6 2000/02/13 21:45:14 petere Exp $
*/
/*
* This implements a sort of variable repository. One could also think of it
* as cheap version of an associative array. In each one of these
* datastructures you can store name/value pairs.
*
* All functions (should) follow the Shit-In-Shit-Out (SISO) principle, i.e.,
* you can pass them NULL pointers and the like and they will return something
* appropriate.
*/
#ifndef VARIABLES_H
@ -37,6 +33,7 @@ VariableSpace CreateVariableSpace(void);
const char *GetVariable(VariableSpace space, const char *name);
bool GetVariableBool(VariableSpace space, const char *name);
bool SetVariable(VariableSpace space, const char *name, const char *value);
bool SetVariableBool(VariableSpace space, const char *name);
bool DeleteVariable(VariableSpace space, const char *name);
void DestroyVariableSpace(VariableSpace space);

View File

@ -1,5 +1,5 @@
#!/bin/sh
# $Header: /cvsroot/pgsql/src/test/regress/Attic/regress.sh,v 1.39 2000/01/09 20:54:36 tgl Exp $
# $Header: /cvsroot/pgsql/src/test/regress/Attic/regress.sh,v 1.40 2000/02/13 21:45:15 petere Exp $
#
if [ $# -eq 0 ]
then
@ -30,7 +30,7 @@ fi
PGTZ="PST8PDT"; export PGTZ
PGDATESTYLE="Postgres,US"; export PGDATESTYLE
FRONTEND="psql $HOSTLOC -n -e -q"
FRONTEND="psql $HOSTLOC -a -q"
# ----------
# Scan resultmap file to find which platform-specific expected files to use.

View File

@ -1,6 +1,6 @@
#!/bin/sh
#
# $Header: /cvsroot/pgsql/src/test/regress/Attic/run_check.sh,v 1.7 2000/01/16 20:05:00 petere Exp $
# $Header: /cvsroot/pgsql/src/test/regress/Attic/run_check.sh,v 1.8 2000/02/13 21:45:15 petere Exp $
# ----------
# Check call syntax
@ -86,7 +86,7 @@ PGDATESTYLE="Postgres,US"; export PGDATESTYLE
# ----------
# The SQL shell to use during this test
# ----------
FRONTEND="$BINDIR/psql $HOSTLOC -n -e -q"
FRONTEND="$BINDIR/psql $HOSTLOC -a -q"
# ----------
# Scan resultmap file to find which platform-specific expected files to use.