给初学者看的 shuf 命令教程
创始人
2024-03-01 22:56:37
0

shuf 命令用于在类 Unix 操作系统中生成随机排列。使用 shuf 命令,我们可以随机打乱给定输入文件的行。shuf 命令是 GNU Coreutils 的一部分,因此你不必担心安装问题。在这个简短的教程中,让我向你展示一些 shuf 命令的例子。

带例子的 shuf 命令教程

我有一个名为 ostechnix.txt 的文件,内容如下:

$ cat ostechnix.txt
line1
line2
line3
line4
line5
line6
line7
line8
line9
line10

现在让我们以随机顺序显示上面的行。为此,请运行:

$ shuf ostechnix.txt
line2
line8
line5
line10
line7
line1
line4
line6
line9
line3

看到了吗?上面的命令将名为 ostechnix.txt 中的行随机排列并输出了结果。

你可能想将输出写入另一个文件。例如,我想将输出保存到 output.txt 中。为此,请先创建 output.txt

$ touch output.txt

然后,像下面使用 -o 标志将输出写入该文件:

$ shuf ostechnix.txt -o output.txt

上面的命令将随机随机打乱 ostechnix.txt 的内容并将输出写入 output.txt。你可以使用命令查看 output.txt 的内容:

$ cat output.txt

line2
line8
line9
line10
line1
line3
line7
line6
line4
line5

我只想显示文件中的任意一行。我该怎么做?很简单!

$ shuf -n 1 ostechnix.txt
line6

同样,我们可以选择前 “n” 个随机条目。以下命令将只显示前五个随机条目:

$ shuf -n 5 ostechnix.txt
line10
line4
line5
line9
line3

如下所示,我们可以直接使用 -e 标志传入输入,而不是从文件中读取行:

$ shuf -e line1 line2 line3 line4 line5
line1
line3
line5
line4
line2

你也可以传入数字:

$ shuf -e 1 2 3 4 5
3
5
1
4
2

要快速在给定范围选择一个,请改用此命令:

$ shuf -n 1 -e 1 2 3 4 5

或者,选择下面的任意三个随机数字:

$ shuf -n 3 -e 1 2 3 4 5
3
5
1

我们也可以在特定范围内生成随机数。例如,要显示 1 到 10 之间的随机数,只需使用:

$ shuf -i 1-10
1
9
8
2
4
7
6
3
10
5

有关更多详细信息,请参阅手册页。

$ man shuf

今天就是这些。还有更多更好的东西。敬请关注!

干杯!


via: https://www.ostechnix.com/the-shuf-command-tutorial-with-examples-for-beginners/

作者:SK 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

第19章 随机波动率模型入...
这学期会时不时更新一下伊曼纽尔·德曼(Emanuel...
2025-05-30 12:00:00
【链表】Leetcode ...
Halo,这里是Ppeua。平时主要更新C语言&#x...
2025-05-30 08:33:04
万斯“随机国家论”惹恼英法
据新华社3月5日消息:美国副总统詹姆斯·戴维·万斯又让欧洲“破防”...
2025-03-05 22:50:09
AI能预测中奖号码?中国体...
近日,中国体育彩票官方微信公众号发布了一则重要声明,彻底打破了人工...
2025-02-12 19:16:54
bzip2是否允许在块或流...
bzip2不支持在块或流级别进行随机访问解压缩。bzip2压缩算法...
2025-01-12 23:01:46
BVH树构建 - 编译时出...
在构建BVH树时,如果编译时出现随机错误,可能是由于以下几个原因导...
2025-01-12 19:01:38

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
从 Yum 更新中排除特定/某... 作为系统更新的一部分,你也许需要在基于 Red Hat 系统中由于应用依赖排除一些软件包。如果是,如...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
Opera 浏览器内置的 VP... 昨天我们报道过 Opera 浏览器内置了 VPN 服务,用户打开它可以防止他们的在线活动被窥视。不过...
如何检查你的 Linux 系统... 不知道在使用哪个初始化系统?以下是方法。每个主流 Linux 发行版(包括 Ubuntu、Fedor...