On Wed, Jul 12, 2023 at 12:06 PM David G. Johnston
<david.g.johnston@gmail.com> wrote:
>
> On Tue, Jul 11, 2023 at 8:52 PM jian he <jian.universality@gmail.com> wrote:
>>
>> hi.
>>
>> test.sql content:
>> --------------------------------------------------------------------------------------------------
>> do $$
>> begin
>> raise info 'information message %', now() ;
>> raise debug 'debug message %', now();
>> raise notice 'notice message %', now();
>> end $$;
>> --------------------------------------------------------------------------------------------------
>> psql -af test.sql > test.out
>>
>
> You've only redirected stdout (file # 1 - implied), the "raise" stuff goes to stderr (file # 2)
>
> IIRC you can do:
>
> psql -af test.sql > test.out 2>&1
>
> (order matters, left-to-right)
>
> But you can search online for "output redirection in Linux" or some such if you want to learn the Linux command line
better.
>
> David J.
>
thanks.
I don't know that "raise" stuff goes to stderr.
To get rid of the line numbers, I use "psql -a < test.sql > test.out
2>&1 " to get the expected result.