2011-10-25 70 views
3

我剛剛學習如何使用命令行中的csv文件。我想使用sed從文件中刪除多行。我已使用此cat file.csv | sed 1,2d > file.csv刪除文件的標頭。使用sed從csv文件中刪除多行

現在我想從文件中刪除多行(第3,10,12和28-35行),我不確定如何將它從關閉中刪除。我會很感激任何幫助。

回答

3

根據sed的實施,可以按如下方式把它們分開:

cat file.csv | sed "1,2d;10d;12d;28,35d" > file2.csv 
+0

我越來越錯誤:'-bash:10d:command not found'和'12d'和'28,35d'相同。和以前一樣,'1,2d'正在工作。 csv的結構有可能被指責嗎? –

+0

該文件不會是原因。我的例子在任何情況下都不能有效。我在Windows上運行它可能是一個不完全兼容的sed版本。我將不得不在明天測試它。對不起,領先。 –

+0

沒問題,謝謝你的努力! –

2

使用-e標誌幾個命令傳遞給一個sed調用,就像這樣:

seq 1 40 | sed -e 1,2d -e 3d -e 10d -e 12d -e 28,35d