shell的练习

embedded/2025/1/11 8:18:34/

192. 统计词频 - 力扣(LeetCode)

写一个 bash 脚本以统计一个文本文件 words.txt 中每个单词出现的

频率

为了简单起见,你可以假设:

  • words.txt只包括小写字母和 ' ' 。
  • 每个单词只由小写字母组成。
  • 单词间由一个或多个空格字符分隔。

示例:

假设 words.txt 内容如下:

the day is sunny the the
the sunny is is

你的脚本应当输出(以词频降序排列):

the 4
is 3
sunny 2
day 1

说明:

  • 不要担心词频相同的单词的排序问题,每个单词出现的频率都是唯一的。
  • 你可以使用一行 Unix pipes 实现吗?

cat words.txt | xargs -n 1 | sort | uniq -c | sort -nr | awk '{print $2" "$1}'

  1. cat words.txt

    • 这个命令读取 words.txt 文件的内容并将其输出到标准输出。
  2. | xargs -n 1

    • | 是管道符,将前一个命令的输出传递给下一个命令。
    • xargs -n 1 将输入的每一行(或每个单词)作为参数传递给后续命令。-n 1 表示每次只处理一个参数。
  3. | sort

    • 将传递过来的单词进行排序。排序是为了后续的去重操作能够正确统计相同单词的出现次数。
  4. | uniq -c

    • uniq 命令用于去除重复的行。-c 选项会在输出中添加每个唯一行的出现次数,即统计每个单词的出现次数。
  5. | sort -nr

    • 这个命令对统计结果进行排序。-n 表示按数值排序,-r 表示以降序排列。这样可以将出现次数最多的单词排在前面。
  6. | awk '{print \$2" "\$1}'

    • awk 是一个文本处理工具,这里用于格式化输出。\$1 表示行的第一个字段(出现次数),\$2 表示第二个字段(单词)。因此,这条命令将输出格式化为“单词 出现次数”。

http://www.ppmy.cn/embedded/152955.html

相关文章

【JavaEE】—— SpringBoot项目集成百度千帆AI大模型(对话Chat V2)

本篇文章在SpringBoot项目中集成百度千帆提供的大模型接口实现Chat问答效果: 一、百度智能云 百度千帆大模型平台是百度智能云推出的一个企业级一站式大模型与AI原生应用开发及服务平台。 注册地址:https://qianfan.cloud.baidu.com/ 注册成功后&…

手机租赁平台开发全解析 让租赁变得更简单便捷

内容概要 手机租赁市场近年来发展迅猛,越来越多的人开始依赖租赁服务来满足他们对智能设备的需求。要知道,这可不仅仅是为了省钱,还是为了体验最新科技的便捷方式。 让我们一起探索这个扬帆起航的市场吧! 在开发一个高效的手机租…

Http请求响应——请求

Http概述 Http协议(HyperText Transfer Protocol,超文本传输协议),是一种用于传输网页数据的协议,规定了浏览器和服务器之间进行数据传输的规则,简单说来就是客户端与服务器端数据交互的数据格式。 客户端…

GoLand 如何集成 Netty?

目录 1.回答问题: 2.以下是实现类似 Netty 功能的步骤: 2.1 实现基本的网络通信功能: 3. 使用 Go 的第三方库实现 Netty 功能 4.实现类似 Netty 的事件循环: 5. 运用场景: 1.回答问题: 要在 GoLand 中…

我在广州学 Mysql 系列——存储过程与存储函数详解

ℹ️大家好,我是练小杰,今天周五了,一周就这样从手上溜走了,还有两星期过年!! 本文将学习MYSQL中存储过程与存储函数的概念~~ 回顾:👉【索引详解】【索引相关练习】 数据库专栏&…

数据结构——栈的实现

今天,我们来写一下关于栈的博文。 1.首先我们先了解一下什么是栈? 一:概念: 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。 进行数据插入和删除操作的一端称为栈顶,另…

英伟达多维进击汽车业务:自动驾驶时代已至

英伟达此次发布的第四代Thor智驾计算平台,算力是上一代Orin平台的20倍。借助Thor,英伟达为车载计算机提供了强大的实时计算能力,支持多传感器融合,实现自动驾驶L4甚至L5级别的能力。2026财年,英伟达还将推出世界基础模…

doris:模型注意事项

建表时列类型建议​ Key 列必须在所有 Value 列之前。 尽量选择整型类型。因为整型类型的计算和查找效率远高于字符串。 对于不同长度的整型类型的选择原则,遵循够用即可。 对于 VARCHAR 和 STRING 类型的长度,遵循够用即可。 聚合模型的局限性​ …