📅  最后修改于: 2023-12-03 15:13:37.531000             🧑  作者: Mango
在 Bash 中可以使用 sed
命令打印奇数行或偶数行。
假设我们有一个文本文件 test.txt
,包含以下内容:
1
2
3
4
5
如果要打印其中的奇数行,我们可以使用以下命令:
sed -n '1~2p' test.txt
输出:
1
3
5
这里的 1~2
表示从第 1 行开始,每隔 2 行打印一次。
如果要打印偶数行,我们可以使用以下命令:
sed -n '2~2p' test.txt
输出:
2
4
这里的 2~2
表示从第 2 行开始,每隔 2 行打印一次。
除了 sed
命令,我们还可以使用 awk
命令实现相同的功能。
如果要打印奇数行,我们可以使用以下命令:
awk 'NR%2==1' test.txt
输出:
1
3
5
这里的 NR%2==1
表示当行号除以 2 的余数为 1 时,打印该行。
如果要打印偶数行,我们可以使用以下命令:
awk 'NR%2==0' test.txt
输出:
2
4
这里的 NR%2==0
表示当行号除以 2 的余数为 0 时,打印该行。
以上两种方法均可实现打印奇数行或偶数行的功能,具体使用哪种方法取决于个人习惯和具体场景。