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

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

干杯!

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

linux中shuf命令用法,技术|给初学者看的 shuf 命令教程相关推荐

  1. (linux中alias的用法)给一些常用的长命令取别名

    应用场景 应用场景包括但不限于: 有的时候,我们经常要cd到一个目录,但是这个目录很长,每次都要输入,浪费时间.因而我们希望可以给这个目录取个别名,从而 cd 别名 甚至,给整个命令娶个别名,从而: ...

  2. linux中shuf命令用法,给初学者看的 shuf 命令教程

    原标题:给初学者看的 shuf 命令教程 英文:SK,翻译:Linux中国/geekpi linux.cn/article-9635-1.html shuf 命令用于在类 Unix 操作系统中生成随机 ...

  3. linux permit用法,技术|12 条实用的 zypper 命令范例

    zypper 是 Suse Linux 系统的包和补丁管理器,你可以根据下面的 12 条附带输出示例的实用范例来学习 zypper 命令的使用. Suse Linux 使用 zypper 进行包管理, ...

  4. linux中EOF的用法梳理

    2019独角兽企业重金招聘Python工程师标准>>> linux中EOF的用法梳理 在linux运维工作中,我们会碰到这样一个场景: 执行脚本的时候,需要往一个文件里自动输入N行内 ...

  5. linux中make的用法

    一.linux中make的用法   目的:        基本掌握了make 的用法,能在Linux系统上编程. 环境:        Linux系统 准备:        准备三个文件:file1. ...

  6. linux ksh 用户名,实例讲解Linux中ksh的用法

    实例讲解Linux中ksh的用法 发布时间:2008-02-18 20:46:01来源:红联作者:Modegle 熟悉Linux的朋友肯定都知道bash,它是Linux默认的命令行解释程序,熟悉Sol ...

  7. Linux之make的用法讲解,linux中make的用法

    1.linux中make的用法 目的: 基本掌握了make 的用法,能在Linux系统上编程. 环境: Linux系统 准备: 准备三个文件:file1.c, file2.c, file2.h fil ...

  8. Linux 中的零拷贝技术,第 2 部分

    技术实现 本系列由两篇文章组成,介绍了当前用于 Linux 操作系统上的几种零拷贝技术,简单描述了各种零拷贝技术的实现,以及它们的特点和适用场景.第一部分主要介绍了一些零拷贝技术的相关背景知识,简要概 ...

  9. Linux 中的零拷贝技术

    引言 传统的 Linux 操作系统的标准 I/O 接口是基于数据拷贝操作的,即 I/O 操作会导致数据在操作系统内核地址空间的缓冲区和应用程序地址空间定义的缓冲区之间进行传输.这样做最大的好处是可以减 ...

最新文章

  1. 散粒噪声是白噪声吗_5种常见的内部噪声,你都清楚吗?
  2. [原]零基础学习在Android进行SDL开发系列文章
  3. 计失败的一次js优化
  4. python查看文档的软件_Python __doc__属性:查看文档
  5. left join 和join区别_sleep、yield、join方法简介与用法 sleep与wait区别 多线程中篇
  6. python中的zookeeper-zkpython安装
  7. BZOJ2243[SDOI2011] 染色
  8. 技术研究:DOOM3网络模型的演化与网络架构
  9. Python实现《人民的名义》关系可视化
  10. 教程篇:《基础模块2》金蝶K3WISE15.0-注册套打教程
  11. Java Shadowing 影子变量 影子声明
  12. 【C++实战 】标准库
  13. 初次配置zookeeper——Invalid config, exiting abnormally
  14. php swach_PHP Switch 语句
  15. 微型计算机中常见到的Ega.VGA等是指,大学计算机基础选择题汇总
  16. 任务二:移动通信发展史
  17. 全能电子地图下载器MapTileDownloader(该软件可提供地图瓦片图)的安装和使用
  18. R语言 常用函数总结
  19. 快速搞定前端技术一面 匹配大厂面试要求学习笔记
  20. 视频教程-JSON入门基础视频课程-Java

热门文章

  1. 在微型计算机中存储器的功能,微型计算机中,存储器的主要功能是____。
  2. 四川万合通盈:拼多多商家装修的店铺要怎么装
  3. Python 自定义对象数组 转JSON 字符串
  4. 一加手机怎么样?一加9 Pro超群屏幕实力再次引领高刷标准
  5. [Codeforces939E][三分法]Maximize!
  6. 一般纳米材料是指尺度为_纳米材料与纳米结构21个题目+完整答案
  7. 如何用VOSviewer分析CNKI关键词共现?
  8. 智能优化算法:多元宇宙优化算法-附代码
  9. 联通“三不”设门槛,移动“三不”争用户
  10. PPT办公软件网页素材资源下载类网站源码 dedecms织梦模板 利于SEO优化