Open2
mysql越しにデータを抜いた時のメモ
タブ区切りデータをいい感じに置換したカンマ区切りデータにする
以下記事を参照。
参考記事
sed 's/"/""/g;s/\t/","/g;s/^/"/;s/$/"/;s/\n//g'
処理内容メモ
- 「"」を「""」に置換する
- "重ねてエスケープとしてる
- "のほうがよいかも
- タブ区切りを「"」区切りに変更する
- /tを","に変換
- ファイルの一番先頭および一番最後の部分は「タブ」にマッチしないため、その2つの部分に個別に「"」を付与している
- 改行を空白に変換
実際のコマンド
mysql接続先に対してselect結果を出力したい時、上記参考に以下コマンドを発行した。
mysql db < select.sql | sed -e 's/"/""/g;s/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > select.csv
mysqlコマンドメモ
# コマンドラインから実行
mysql db -e "select * from table limit 10"