Linux命令行操作:学生信息排序、筛选和统计
Linux命令行操作:学生信息排序、筛选和统计
假设在Linux中randstu.txt文本文件保存了学生信息,需要使用命令实现以下功能:
-
将
randstu.txt中学生信息行按照学号排序,并在每行前面加上行号,最后将结果输出到一个新文件stu.txt中。命令实现:
sort -k1 randstu.txt | awk '{print NR " " $0}' > stu.txt
**解释:**
* `sort`命令按照第一列(学号)排序,`-k1`表示按照第一列排序。
* `awk`命令在每行前面添加行号,并将结果输出到`stu.txt`文件中。
2. **组合使用`head`和`tail`命令,输出`stu.txt`中第11~20名同学的信息。**
**命令实现:**
```bash
head -n 20 stu.txt | tail -n 10
解释:
head命令输出前20行,tail命令输出其中的后10行,即第11~20名同学的信息。
-
分别统计男生和女生的人数。
命令实现:
grep '男' stu.txt | wc -l grep '女' stu.txt | wc -l
**解释:**
* `grep`命令筛选出包含'男'或'女'的行,`|`表示管道,将结果传递给`wc`命令。
* `wc`命令统计行数,`-l`表示只显示行数,不显示其他信息,即分别统计男生和女生的人数。
原文地址: https://www.cveoy.top/t/topic/oOcl 著作权归作者所有。请勿转载和采集!