15
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ファイルの特定行を読む

Last updated at Posted at 2014-08-19

CSVファイルをプログラムで処理している時 hoge.csv の 146 行目でエラー とか表示されることがよくあります。そういう時に hoge.csv の 146 行目を読むには下のようなコマンドを使うとすばやく中身を確認できます。

sed -n "146p" hoge.csv              # hoge.csv の 146 行目を表示
sed -n "140,150p" hoge.csv          # hoge.csv の 140 ~ 150 行目を表示
nl hoge.csv | sed -n "140,150p"     # 上と同じ(行番号付き)

エラーが複数行で発生した場合は下のようにすると便利ですね。

sed -n "146p; 190p; 220p"           # 146行目、190行目、220行目のみを表示

他の方法としては、 headtail の合わせ技や awk を使った方法があるようです。

awk "NR == 140, NR == 150" hoge.csv
head -n 150 hoge.csv | tail -n 10

30万行くらいあるファイルで試してみましたが、どれも一秒以下で終わるので、好きなものを使っていいと思います。
また、特定行 以外 を出力する場合は下記のようにします。

sed "146d; 190d; 220d" test.csv > result.csv          # 146行目、190行目、220行目以外を出力
15
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
15

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?