答案1
假设teamsfile
文件包含你想要的球队总数的数据,那么
1. 使用cut
和uniq
tail -n +2 teamsfile | cut -d "," -f2 | uniq | wc -l
tail -n +2 团队文件 - 打印文件但不打印第一行(在您的情况下是值的标签)
剪切-d“,”-f2- 剪切用逗号分隔的第二个字段(作为分隔符)
独特 - 仅显示唯一值。(也可以使用
sort -u
)厕所 - 打印输出中的行数
或者,您可以使用sed
和awk
。它们在这样的任务中非常有用。
2.使用grep
以避免打印第一行。
cat teamsfile | grep -v "Team" | cut -d "," -f2 | sort -u | wc -l
- grep -v- 否定对字符串“Team”的搜索
答案2
您可以简单地使用 awk 打印所有团队,然后找到计数。
grep -v "Team" teamsfile | awk -F',' '{print $2}' | sort -u | wc -l
这句话会告诉你队伍的数量。
解释::
grep :将选择其中包含“Team”关键字的所有行。
awk :它根据“逗号”换行并打印包含团队名称的第二列。
sort -u :它将首先按字母顺序对所有球队名称进行排序,然后只保留唯一的记录。
wc -l :它将提供数据存在的行数,在上面的例子中,是唯一的团队名称的数量。