きっかけは複数行クエリのコピペに関して。デフォルトではプロンプト(クエリの左側)に常にデータベース名があり、コピー&ペーストで即実行できません。プロンプトを消す方法を見つけ、起動時からそうするにはpsqlの設定ファイルに書けばよいと判明。さらに起動用バッチファイルに一体化すれば、複数の接続と環境を簡単に切り替えられます。

実行環境

参考リンク

プロンプト(クエリの左側)を消すメタコマンド

参考リンクにあるとおり、メタコマンド \set PROMPT1 でクエリ先頭のプロンプト、同様に \set PROMPT2 が2行目以降。だから常にプロンプトを非表示にするには ↓ と入力します。
\set PROMPT1 ''
\set PROMPT2 ''
これで複数行クエリのコピペが便利になりました。下の画像1枚目がデフォルト、2枚目がプロンプトなし。 接続先データベースの確認はメタコマンド \conninfo、またはクエリ select current_database(); でOK。

psqlの設定ファイル(psqlrc)を、psql起動バッチファイルに一体化する

プロンプトの消し方は分かったものの、その都度メタコマンドを2行入力するのは面倒。調べた結果、psqlの設定ファイル(Linux等では.psqlrc、Windowsではpsql.conf)にメタコマンドを書けば起動時に実行されると分かりました。さらに調べると設定ファイルのパスは環境変数psqlrcで変更できると判明。だから適当な一時ファイルを設定ファイルにし、バッチ内で一行ずつ書き込めば一体化できます。テンプレは ↓ こんな感じ。
:: 環境変数 psqlrc に、一時ファイルのパスを入れる
set psqlrc=psqlrc_tmp

:: psqlrc に書く内容を、一行ずつ一時ファイルに書き込む
echo \set PROMPT1 '' > %psqlrc%
echo \set PROMPT2 '' >> %psqlrc%

:: あとは psql を起動するだけ. 接続先などもここで設定
psql -U postgres

:: psql 終了後、一時ファイルを消す
del "%psqlrc%"

psqlの設定ファイルには、起動時メッセージやクエリ実行も書ける

今回のきっかけ「プロンプトを消す」に限らず、psqlの設定ファイルには様々な内容を書けます。詳細は参考リンクにある例を参照。自分のWindows環境では動作しないものもありましたが、少なくとも下記は有効でした。
\set QUIET on
\pset format unaligned
\pset tuples_only
\timing on
というわけで今回作ったバッチファイルは ↓ のとおり。最初に環境変数でpsqlと一時的な設定ファイルのパスを設定し、echoコマンドで一行ずつ設定ファイルに書き込んだ後、psqlを起動します。psqlを閉じたら設定ファイルを削除。
@echo off
set pgbin=D:/AppsPortable/PostgreSQL/9.5.0_rc1/bin/
set psqlrc=psqlrc_tmp

echo.
echo \echo %pgbin%psql.exe > %psqlrc%
echo \set PROMPT1 '' >> %psqlrc%
echo \set PROMPT2 '' >> %psqlrc%
echo \pset border 2 >> %psqlrc%
echo select version() as "sever version"; >> %psqlrc%

"%pgbin%psql" -U postgres
del "%psqlrc%"
↓ バッチファイルを適当な場所に置いて実行した様子。ここでは事前にコンソールを立ち上げて実行してますが、主にエクスプローラからダブルクリックで直接実行する想定です。
R:\>psql_start.bat

:: バッチファイルに書いたメッセージ表示、環境設定、クエリが実行される
D:/AppsPortable/PostgreSQL/9.5.0_rc1/bin/psql.exe
Border style is 2.
+--------------------------------------------------------------+
|                        sever version                         |
+--------------------------------------------------------------+
| PostgreSQL 9.5rc1, compiled by Visual C++ build 1800, 64-bit |
+--------------------------------------------------------------+
(1 row)

:: ここから psql のシェルが始まる
psql (9.5rc1)
Type "help" for help.

:: いつも通りクエリを書く
select now();
+-------------------------------+
|              now              |
+-------------------------------+
| 2016-01-03 20:37:00.150059+09 |
+-------------------------------+
(1 row)


:: 終了は \q で. Ctrl-C だと「バッチファイルを終了しますか」と聞かれる
\q

R:\>

データベースや環境設定ごとに起動用バッチを作ると便利かも

今回は接続先ホスト・データベースはデフォルトのままでしたが、バッチファイルのpsql起動の行で任意に設定できるので、接続先+環境設定ごとに一つのバッチとして保存しておけます。 ところで、psqlを閉じるメタコマンド\qを設定ファイルに書いたところ ↓ 無視され、psqlが起動したままで終わりました。これができれば、psqlの起動~処理~終了まで一つのバッチファイルで完結しそうなのですが。
@echo off
set pgbin=D:/AppsPortable/PostgreSQL/9.5.0_rc1/bin/
set psqlrc=psqlrc_tmp

echo select version() as "sever version"; > %psqlrc%
echo select pg_sleep(1); >> %psqlrc%
echo \q >> %psqlrc% <- この行は無効

"%pgbin%psql" -U postgres
del "%psqlrc%"
まぁ仮にpsqlの終了まで出来ても、バッチファイルではヒアドキュメントが使えないので、コマンドを一行ずつ設定ファイルに書き込む部分が  >> %psqlrc%の繰り返しになって面倒。実用性は薄いかな。