このエントリーをはてなブックマークに追加


sedコマンドで改行のみの行を削除する

sedコマンドを利用し、改行のみの行を削除する方法を以下に記します。


関連記事

sedコマンドの構文

sedコマンドを利用して改行のみの行を削除する時は以下の構文になります。

sed '/^$/d' 対象ファイル > 出力ファイル

または

cat 対象ファイル |  sed '/^$/d' > 出力ファイル

実際に上記sedの構文を試した結果を以下に記します。

sedコマンドで改行のみの行を削除してみる

以下のファイルから改行のみの行を削除してみます。

$ cat -n sakura.txt
    1  hokkaido
    2  aomori
    3
    4  iwate
    5  akita
    6  yamagata
    7
    8
    9
   10  fukushima
   11  miyagi

標準出力に結果を出力

ファイルに出力せずに標準出力に表示したときの実行結果です。

$ sed '/^$/d' sakura.txt
hokkaido
aomori
iwate
akita
yamagata
fukushima
miyagi

ファイルに出力してみる

catコマンドでファイルを出力しパイプでsedコマンドにテキストファイルの情報を渡しています。
リダイレクトでsakura2.txtに改行のみの行を削除した結果を出力しています。

$ cat sakura.txt | sed '/^$/d' > sakura2.txt

$ cat sakura2.txt
hokkaido
aomori
iwate
akita
 yamagata
fukushima
miyagi

以上、sedを使った改行のみの行の削除方法でした。



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:27:17