2016-08-04 79 views
1

我對Unix命令不是很有經驗,但是我想從第二行刪除到第809,600行。我試過這個:刪除CSV文件中的成千上萬行

sed '2,809600d' extract.csv 

..但它似乎沒有刪除任何行時,我做了一個計數。任何幫助將非常感激。

+0

如果你正在使用'sed'命令,它與'bash'有什麼關係? – Jdamian

+3

你應該知道'sed'是一個過濾器,即它處理一個輸入併產生一個輸出......它不會改變輸入文件,除非你使用'-i'選項。閱讀'sed'手冊頁! – Jdamian

回答

1

您的命令是正確的,您只需要使用-i選項sed編輯文件,否則sed將在STDOUT上顯示輸出,而不是實際修改文件。

做:

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