2016-08-04 11 views
1

私はUNIXコマンドではあまり経験はありませんが、2行目から809,600行目まで削除したいと思っています。私はこれを試しました:CSVファイルで数十万行を削除する

sed '2,809600d' extract.csv 

..しかし、私はカウントを行うと、どの行も削除されていないようです。どんな助けでも大歓迎です。

+0

'sed'コマンドを使用している場合、' bash'とは何が関係していますか? – Jdamian

+3

あなたは 'sed'がフィルターであること、つまり入力を処理して出力を生成することを知っておくべきです。' -i'オプションを使わない限り、入力ファイルは変更されません。 'sed'のマニュアルページを読んでください! – Jdamian

答えて

1

次のコマンドは右である、あなただけのSTDOUTに出力を表示しますsedそうsed-iオプションを使用してではなく、実際にファイルを変更する場所にファイルを編集する必要があります。

の操作を行います。

sed -i '2,809600 d' extract.csv 

それとも、バックアップ元のファイルたい場合:

sed -i.bak '2,809600 d' extract.csv 

を元のファイルがextract.csv.bakとしてバックアップされます。

+1

BSD/OSX上で 'sed -i" "'2,809600 d' extract.csv'を実行してください。 – John1024

関連する問題