diff options
Diffstat (limited to 'src/bin/psql/command.c')
-rw-r--r-- | src/bin/psql/command.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c index a52adc8186f..07efc27a697 100644 --- a/src/bin/psql/command.c +++ b/src/bin/psql/command.c @@ -906,8 +906,11 @@ exec_command(const char *cmd, free(fname); } - /* \g [filename] -- send query, optionally with output to file/pipe */ - else if (strcmp(cmd, "g") == 0) + /* + * \g [filename] -- send query, optionally with output to file/pipe + * \gx [filename] -- same as \g, with expanded mode forced + */ + else if (strcmp(cmd, "g") == 0 || strcmp(cmd, "gx") == 0) { char *fname = psql_scan_slash_option(scan_state, OT_FILEPIPE, NULL, false); @@ -920,6 +923,8 @@ exec_command(const char *cmd, pset.gfname = pg_strdup(fname); } free(fname); + if (strcmp(cmd, "gx") == 0) + pset.g_expanded = true; status = PSQL_CMD_SEND; } |