コマンドラインで一行おきに行結合する方法
paste コマンド 標準入力から2行ずつ読み込み。
$ seq 5 | paste -d ',' - - 1,2 3,4 5,
sed
$ seq 5 | sed 'N;s/\n/,/' 1,2 3,4 5
paste コマンド 標準入力から2行ずつ読み込み。
$ seq 5 | paste -d ',' - - 1,2 3,4 5,
sed
$ seq 5 | sed 'N;s/\n/,/' 1,2 3,4 5
改行のみの空行と、空白文字列と改行のみで構成される空白行をまとめて削除する方法です。
Wikipediaの「猫の品種の一覧」ページから「猫の品種」HTMLテーブルをスクレイピングして取得、CSV変換して必要なデータをフィルタする例。
EXCELでファイルをCSVにエクスポートすると文字化けすることが多く、メニューをクリックするアクションが多くて面倒です。コマンドラインで履歴を利用したほうが早く、文字化けもありません。
$ cat > abc.csv
上記コマンドの後にEnterで改行、ペーストしてEnter、 最後にCtrl-D。
$ curl http://lynx.browser.org/ | perl -C -Mutf8 -pe 's/<.+?>//g' $ curl http://lynx.browser.org/ | sed -e 's/<[^>]*>//g'