From: Tom Lane Date: Sun, 2 Apr 2017 23:01:53 +0000 (-0400) Subject: Doc: clarify behavior of OT_WHOLE_LINE and OT_FILEPIPE psql slash commands. X-Git-Tag: REL_10_BETA1~413 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ffac5998b4c18920f86d80f1bddbde9ebcf0a314;p=postgresql Doc: clarify behavior of OT_WHOLE_LINE and OT_FILEPIPE psql slash commands. This is another bit of ancient behavior that was documented poorly (in a couple of cases) or not at all (in several others). Discussion: https://postgr.es/m/9b4ea968-753f-4b5f-b46c-d7d3bf7c8f90@manitou-mail.org --- diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml index 8f43a1c8b3..3b86612862 100644 --- a/doc/src/sgml/ref/psql-ref.sgml +++ b/doc/src/sgml/ref/psql-ref.sgml @@ -989,8 +989,10 @@ testdb=> command. All options other than the data source/destination are as specified for . Because of this, special parsing rules apply to the \copy - command. In particular, psql's variable substitution - rules and backslash escapes do not apply. + meta-command. Unlike most other meta-commands, the entire remainder + of the line is always taken to be the arguments of \copy, + and neither variable interpolation nor backquote expansion are + performed in the arguments. @@ -1820,6 +1822,13 @@ Tue Oct 26 21:40:57 CEST 1999 line of the file.) + + Unlike most other meta-commands, the entire remainder of the line is + always taken to be the argument(s) of \ef, and neither + variable interpolation nor backquote expansion are performed in the + arguments. + + See under psql will position the cursor on the specified line of the view definition. + + + Unlike most other meta-commands, the entire remainder of the line is + always taken to be the argument(s) of \ev, and neither + variable interpolation nor backquote expansion are performed in the + arguments. + @@ -1916,6 +1932,14 @@ Tue Oct 26 21:40:57 CEST 1999 A \g with argument is a one-shot alternative to the \o command. + + If the argument begins with |, then the entire remainder + of the line is taken to be + the command to execute, + and neither variable interpolation nor backquote expansion are + performed in it. The rest of the line is simply passed literally to + the shell. + @@ -2035,6 +2059,13 @@ hello 10 SQL commands is shown. + + Unlike most other meta-commands, the entire remainder of the line is + always taken to be the argument(s) of \help, and neither + variable interpolation nor backquote expansion are performed in the + arguments. + + To simplify typing, commands that consists of several words do @@ -2303,10 +2334,20 @@ lo_import 152801 specified, the query output is reset to the standard output. - Query results includes all tables, command + + If the argument begins with |, then the entire remainder + of the line is taken to be + the command to execute, + and neither variable interpolation nor backquote expansion are + performed in it. The rest of the line is simply passed literally to + the shell. + + + + Query results includes all tables, command responses, and notices obtained from the database server, as well as output of various backslash commands that query the - database (such as \d), but not error + database (such as \d); but not error messages. @@ -2907,6 +2948,13 @@ testdb=> \setenv LESS -imx4F output lines are numbered, with the first line of the function body being line 1. + + + Unlike most other meta-commands, the entire remainder of the line is + always taken to be the argument(s) of \sf, and neither + variable interpolation nor backquote expansion are performed in the + arguments. + @@ -2926,6 +2974,13 @@ testdb=> \setenv LESS -imx4F If + is appended to the command name, then the output lines are numbered from 1. + + + Unlike most other meta-commands, the entire remainder of the line is + always taken to be the argument(s) of \sv, and neither + variable interpolation nor backquote expansion are performed in the + arguments. + @@ -3001,6 +3056,15 @@ testdb=> \setenv LESS -imx4F If the current query buffer is empty, the most recently executed query is written instead. + + + If the argument begins with |, then the entire remainder + of the line is taken to be + the command to execute, + and neither variable interpolation nor backquote expansion are + performed in it. The rest of the line is simply passed literally to + the shell. + @@ -3057,11 +3121,17 @@ testdb=> \setenv LESS -imx4F \! [ command ] - Escapes to a separate shell or executes the shell command - command. The - arguments are not further interpreted; the shell will see them - as-is. In particular, the variable substitution rules and - backslash escapes do not apply. + With no argument, escapes to a sub-shell; psql + resumes when the sub-shell exits. With an argument, executes the + shell command command. + + + + Unlike most other meta-commands, the entire remainder of the line is + always taken to be the argument(s) of \!, and neither + variable interpolation nor backquote expansion are performed in the + arguments. The rest of the line is simply passed literally to the + shell.