grep筛选成绩表中符合的成绩
时间: 2023-11-22 11:35:56 浏览: 51
你可以使用 `grep` 命令来筛选成绩表中符合条件的成绩。假设你有一个名为 `grades.txt` 的文本文件,其中包含学生的姓名和成绩,每行一个记录,格式为“姓名 成绩”。你想筛选出所有成绩大于等于80的学生,可以使用以下命令:
```
grep "^[^ ]* [8-9][0-9]\{0,2\}$\|^[^ ]* 100$" grades.txt
```
该命令中的正则表达式 `"^[^ ]* [8-9][0-9]\{0,2\}$\|^[^ ]* 100$"` 匹配了满足条件的成绩。这个正则表达式表示首先匹配任意数量的非空格字符(学生姓名),然后空格,再匹配80至99之间的数字(包括80和99),或者匹配数字100。整个正则表达式用 `\|` 连接了两个条件,表示或的关系。
如果你想将筛选结果输出到一个新文件中,可以使用重定向操作符 `>`,例如:
```
grep "^[^ ]* [8-9][0-9]\{0,2\}$\|^[^ ]* 100$" grades.txt > filtered_grades.txt
```
这样会将筛选结果写入到名为 `filtered_grades.txt` 的新文件中。
阅读全文