回答
GNU SED具有合適的尋址模式:
sed -n '1~2!p' file
這意味着,從第1行開始,並用步驟2中,打印所有其它線路。
同樣地,你可以刪除-n
和刪除匹配的行:
sed '1~2d'
它也可以用awk完成:
awk 'NR%2==0' file
(當行數是2的倍數,打印線)
謝謝!很有幫助。 – 2016-12-11 15:28:32
當我在macos上用sed試試這個時,我得到錯誤「invalid command code〜」。 – 2017-12-13 12:54:37
這裏是我能想到的最短的:
sed -n 'g;n;p' file
它應該與非GNU版本sed
(以及GNU sed
)一起使用。
+1便攜式 – 2012-10-02 15:40:02
這也適用於OS X! (不像'sed -n'1〜2!p''。)它需要2,4,6行......我無法從man page中弄清楚如何採用1,3,5行。不過,添加第一行很簡單。 – Nagel 2013-08-02 12:47:32
@Nagel:嘗試:'sed -n'p; n'file'或'sed'n; d'file'用於輸出奇數行。順便說一句,我不認爲'g'是輸出偶數行所必需的:'sed -n'n; p'file'似乎可行。 – 2013-08-02 14:03:25
還有一個AWK:
awk getline file
Perl的解決方案:
perl -ne 'print if $. % 2 == 0' file
$.
是行號的問題
這個人問'sed',你的閱讀能力很差,但是有人會覺得這很有用,所以+1。 – 2015-09-16 01:59:02
我回答自sed,awk和perl經常可以互換使用。 儘管速度和簡單性有所不同,但它們全部用於命令行或shell腳本中。 – 2015-09-16 14:31:14
- 1. 刪除所有其他列
- 2. 如何使用sed和uniq刪除列以外的所有其他行,如最後給出的結果?
- 3. 使用sed刪除cruft行
- 4. 使用sed刪除多行
- 5. 如何使用sed刪除文件中的所有雙引號
- 6. 使用sed刪除包含多個字符串的所有行
- 7. PHP如何刪除所有其他運營商除了 -
- 8. Angular - 如何刪除所有其他現有指令?
- 9. 如何用sed刪除一行空格?
- 10. 使用awk/sed刪除雙行新行
- 11. 使用BASH或awk或sed或其他方法刪除文件的前兩行
- 12. 如何禁用所有其他行除了在EDIT模式
- 13. sed單行刪除所有單行換行符?
- 14. 使用sed刪除每第七行
- 15. 刪除給定列表中除行號以外的其他所有行
- 16. 如何刪除所有Cookie使用jQuery
- 17. 刪除所有行
- 18. 如何gm所有刪除的文件從回購,排除其他
- 19. 如何使用「sed」在比賽/比賽後刪除2行?
- 20. 如何使用sed刪除包含點字符的行
- 21. 如何使用sed命令刪除幾行
- 22. 如何使用sed從空行刪除製表符?
- 23. 如何使用sed刪除帶方括號的行?
- 24. 如何使用sed刪除Solaris上的下一行
- 25. 如何使用sed刪除三重空行?
- 26. 如何使用sed/awk或其他東西從文件中刪除特定的行?
- 27. sed命令刪除所有不包含標點符號的行
- 28. Sed行刪除不必要的空格也刪除行結束&其他奇怪的新行問題
- 29. 刪除所有行除了
- 30. 使用sed/grep從csv文件中刪除所有非整數行
半今天早上似乎是愚人節的笑話,以及... – Will 2010-04-01 12:55:04
如果是愚人節的話,那麼答案必須是:grep不是input.txt – paxdiablo 2010-04-01 13:12:32
@paxdiablo:那麼'grep -v Remove'呢? – Cascabel 2010-04-01 14:06:52