linux 中如何提取文件的前半部分和后半部分

 

001、提取前半部分

root@ubuntu01:/home/test2# cat a.txt                 ## 测试数据
1
2
3
4
5
6
7
8
9
10
root@ubuntu01:/home/test2# sed -n "1, $(expr $(sed -n "$=" a.txt) / 2)p" a.txt         ## 提取前半部分
1
2
3
4
5

 

 

002、提取后半部分

root@ubuntu01:/home/test2# cat a.txt
1
2
3
4
5
6
7
8
9
10
root@ubuntu01:/home/test2# sed "1, $(expr $(sed -n "$=" a.txt) / 2)d" a.txt       ## 提取后半部分
6
7
8
9
10

 

003、awk实现

root@ubuntu01:/home/test2# ls
a.txt
root@ubuntu01:/home/test2# cat a.txt
1
2
3
4
5
6
7
8
9
10
root@ubuntu01:/home/test2# awk -v a=$(sed -n "$=" a.txt) 'NR <= a/2' a.txt      ## awk实现提取前半部分
1
2
3
4
5

 

 

root@ubuntu01:/home/test2# ls
a.txt
root@ubuntu01:/home/test2# cat a.txt
1
2
3
4
5
6
7
8
9
10
root@ubuntu01:/home/test2# awk -v a=$(sed -n "$=" a.txt) 'NR > a/2' a.txt       ## 提取后半部分
6
7
8
9
10

 

posted @ 2022-09-16 12:01  小鲨鱼2018  阅读(579)  评论(0编辑  收藏  举报