]> granicus.if.org Git - postgresql/commitdiff
Allow 'psql -f -' to read from standard input.
authorPeter Eisentraut <peter_e@gmx.net>
Sun, 6 May 2001 17:38:32 +0000 (17:38 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Sun, 6 May 2001 17:38:32 +0000 (17:38 +0000)
doc/src/sgml/ref/psql-ref.sgml
src/bin/psql/startup.c

index 9fbafcc88148c9fe984007205b7effd887c61aba..06b0cbb2b17fe3c277e09e65869834ea871ad87f 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-$Header: /cvsroot/pgsql/doc/src/sgml/ref/psql-ref.sgml,v 1.48 2001/05/06 17:21:11 petere Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/psql-ref.sgml,v 1.49 2001/05/06 17:38:31 petere Exp $
 Postgres documentation
 -->
 
@@ -1292,6 +1292,12 @@ Access permissions for database "test"
       After the file is processed, <application>psql</application> terminates.
       This is in many ways equivalent to the internal command <command>\i</command>.
       </para>
+
+      <para>
+       If <replaceable>filename</replaceable> is <literal>-</literal>
+       (hyphen), then standard input is read.
+      </para>
+
       <para>
       Using this option is subtly different from writing
       <literal>psql &lt; <replaceable class="parameter">filename</replaceable></literal>.
index 5729b3e27e5ac9ceff1f8ebf5bb9e94b443301f6..3d38afaf6babb765d5578844484f3daca24bdc09 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright 2000 by PostgreSQL Global Development Group
  *
- * $Header: /cvsroot/pgsql/src/bin/psql/startup.c,v 1.46 2001/03/23 00:36:38 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/startup.c,v 1.47 2001/05/06 17:38:32 petere Exp $
  */
 #include "postgres_fe.h"
 
@@ -230,7 +230,7 @@ main(int argc, char *argv[])
        /*
         * process file given by -f
         */
-       if (options.action == ACT_FILE)
+       if (options.action == ACT_FILE && strcmp(options.action_string, "-")!=0)
        {
                if (!options.no_psqlrc)
                        process_psqlrc();
@@ -290,6 +290,8 @@ main(int argc, char *argv[])
                        process_psqlrc();
                if (!pset.notty)
                        initializeInput(options.no_readline ? 0 : 1);
+               if (options.action_string) /* -f - was used */
+                       pset.inputfile = "<stdin>";
                successResult = MainLoop(stdin);
        }