
コマンドラインの MySQL クエリ結果の出力列を区切るために使用される文字列を変更することは可能ですか? たとえば、または|
に変更できますか?!
||
答え1
マニュアル(Linuxの場合man mysql
)によると、-s -r
オプション付きでmysqlを起動すると、クエリが次のように変わります。
% mysql
mysql> SELECT CHAR(92);
+----------+
| CHAR(92) |
+----------+
| \ |
+----------+
に
% mysql -s -r
mysql> SELECT CHAR(92);
CHAR(92)
\
答え2
はい。mysql ドキュメントより:
[mysql コマンドライン] 対話型で使用する場合、クエリ結果は ASCII テーブル形式で表示されます。非対話型で使用する場合 (たとえば、フィルターとして使用)、結果はタブ区切り形式で表示されます。出力形式は、コマンド オプションを使用して変更できます。
したがって、mysql コマンドラインの出力を sed にパイプし、タブを任意のものに変更できます。
sed ドキュメントを参照してください:http://www.grymoire.com/Unix/Sed.html#uh-6
また、そのオプションを明示的に追加するパッチもあるようです:参考: