分享

给初学者看的 shuf 命令教程 | Linux 中国

 太极混元天尊 2018-05-13
使用 shuf 命令,我们可以随机打乱给定输入文件的行。
-- Sk



致谢
编译自 | https://www./the-shuf-command-tutorial-with-examples-for-beginners/ 
 作者 | Sk
 译者 | geekpi 💎 💎 共计翻译:713 篇 贡献时间:1659 天

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

带例子的 shuf 命令教程

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

  1. $ cat ostechnix.txt

  2. line1

  3. line2

  4. line3

  5. line4

  6. line5

  7. line6

  8. line7

  9. line8

  10. line9

  11. line10

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

  1. $ shuf ostechnix.txt

  2. line2

  3. line8

  4. line5

  5. line10

  6. line7

  7. line1

  8. line4

  9. line6

  10. line9

  11. line3

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

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

  1. $ touch output.txt

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

  1. $ shuf ostechnix.txt -o output.txt

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

  1. $ cat output.txt

  2. line2

  3. line8

  4. line9

  5. line10

  6. line1

  7. line3

  8. line7

  9. line6

  10. line4

  11. line5

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

  1. $ shuf -n 1 ostechnix.txt

  2. line6

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

  1. $ shuf -n 5 ostechnix.txt

  2. line10

  3. line4

  4. line5

  5. line9

  6. line3

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

  1. $ shuf -e line1 line2 line3 line4 line5

  2. line1

  3. line3

  4. line5

  5. line4

  6. line2

你也可以传入数字:

  1. $ shuf -e 1 2 3 4 5

  2. 3

  3. 5

  4. 1

  5. 4

  6. 2

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

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

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

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

  2. 3

  3. 5

  4. 1

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

  1. $ shuf -i 1-10

  2. 1

  3. 9

  4. 8

  5. 2

  6. 4

  7. 7

  8. 6

  9. 3

  10. 10

  11. 5

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

  1. $ man shuf

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多