【busybox记录】【shell指令】shuf

目录

内容来源:

【GUN】【shuf】指令介绍

【busybox】【shuf】指令介绍

【linux】【shuf】指令介绍

使用示例:

打乱内容 - 默认输出

打乱内容 - 最多输出n行

打乱内容 - 将输出写入文件

打乱内容 - 重复输出

打乱内容 - 打乱本条指令的参数

打乱内容 - 打乱指定范围内的数字

常用组合指令:

指令不常用/组合用法还需继续挖掘:


内容来源:

        GUN : Coreutils - GNU core utilities

        busybox v1.36.1 : 【busybox记录】【shell指令】基于的Busybox的版本和下载方式-CSDN博客

【GUN】【shuf】指令介绍

shuf:打乱文本
shuf 通过输出输入线的随机排列来打乱其输入。每个输出排列都是等可能的。
简介:
shuf [option]... [file]
shuf -e [option]... [arg]...
shuf -i lo-hi [option]...
Shuf有三种操作模式,影响它获得输入线的位置。默认情况下,它从标准输入中读取行。修改操作模式的选项包括:
‘-e’
‘--echo’ 将每个命令行操作数视为输入行。
‘-i lo-hi’
‘--input-range=lo-hi’就像输入来自一个文件,该文件包含无符号十进制整数lo…hi,每行一个。shuf的其他选项可以影响它在所有操作模式下的行为:
‘-n count’
‘--head-count=count’最多输出行数。默认情况下,输出所有输入行。
‘-o output-file’
‘--output=output-file’将输出写入输出文件,而不是标准输出。shuf在打开输出文件之前读取所有输入,因此你可以使用 shuf -o F < F 和 cat F | shuf -o F 这样的命令安全地将文件打乱。
‘--random-source=file’使用文件作为随机数据的来源,用于确定要生成哪种排列。参见第2.5节[随机来源],第7页。
‘-r’
‘--repeat’重复输出值,即替换选择。使用这个选项,输出不是输入的排列;相反,每一行输出都是从所有输入中随机选择的。这个选项通常与--head-count;如果 --head-count 没有给出,shuf就会无限重复。
‘-z’
‘--zero-terminated’用0字节而不是换行符分隔项(ASCII LF)。例如,将输入视为用ASCII NUL分隔的项目,并以ASCII NUL终止输出项目。此选项可以与`perl -0`或`find -print0`和`xargs -0`一起使用,它们的作用相同,以便可靠地处理任意文件名(即使是包含空格或其他特殊字符的文件名)。例如:
shuf <<EOF
A man,
a plan,
a canal:
Panama!
EOF
可能产生输出
Panama!
A man,
a canal:
a plan,
类似地,命令如下:
shuf -e clubs hearts diamonds spades
可能会输出:
clubs
diamonds
spades
heartsshuf -i 1-4 命令的输出可能是:
4
2
1
3
上面的例子都有4条输入线,因此shuf可能产生输入的24种可能排列中的任何一种。一般来说,如果有n行输入,就有n!(即n的阶乘,或n * (n - 1) *…* 1)可能的输出排列。
要输出50个0 ~ 9范围内的随机数,可以使用:
shuf -r -n 50 -i 0-9
要模拟100次抛硬币,可使用:
shuf -r - n100 -e头尾
退出状态为零表示成功,非零值表示失败。

【busybox】【shuf】指令介绍

NA

【linux】【shuf】指令介绍

[root@localhost bin]# shuf --help
用法: shuf [选项]... [文件]或者:  shuf -e [选项]... [参数]...或者:  shuf -i LO-HI [选项]...
Write a random permutation of the input lines to standard output.如果没有指定文件,或者文件为"-",则从标准输入读取。必选参数对长短选项同时适用。-e, --echo                treat each ARG as an input line-i, --input-range=LO-HI   treat each number LO through HI as an input line-n, --head-count=COUNT    output at most COUNT lines-o, --output=FILE         write result to FILE instead of standard output--random-source=FILE  get random bytes from FILE-r, --repeat              output lines can be repeated-z, --zero-terminated     line delimiter is NUL, not newline--help		显示此帮助信息并退出--version		显示版本信息并退出GNU coreutils 在线帮助:<https://www.gnu.org/software/coreutils/>
请向 <http://translationproject.org/team/zh_CN.html> 报告 shuf 的翻译错误
完整文档请见:<https://www.gnu.org/software/coreutils/shuf>
或者在本地使用:info '(coreutils) shuf invocation'

使用示例:

打乱内容 - 默认输出

只是简单的重新排序

指令: shuf test2.txt

打乱内容 - 最多输出n行

-n 选项

指令: shuf -n 10 test2.txt

打乱内容 - 将输出写入文件

-o 选项

指令: shuf -o test.log test2.txt

打乱内容 - 重复输出

-r选项 重复输出值,即替换选择。使用这个选项,输出不是输入的排列;相反,每一行输出都是从所有输入中随机选择的

指令:shuf -n 10 -r test2.txt

打乱内容 - 打乱本条指令的参数

-e 选项

大概就是这个意思

指令: shuf -e 123 45 78 415 48 15 4 12 47

打乱内容 - 打乱指定范围内的数字

-i选项

打乱 1 - 20 之间的数字,可以与其他参数一起使用

指令: shuf -i 1-20

与其他参数一起使用时,需要把参数写在后面

指令: shuf -i 1-20 -n 10

常用组合指令:

NA

指令不常用/组合用法还需继续挖掘:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/674933.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

crossover怎么打开软件 mac怎么下载steam crossover下载的软件怎么运行

CrossOver是一款Mac和Linux平台上的类虚拟机软件&#xff0c;通过CrossOver可以运行Windows的可执行文件。如果你是Mac用户且需要使用CrossOver&#xff0c;但是不知道CrossOver怎么打开软件&#xff0c;如果你想在Mac电脑上玩Windows游戏&#xff0c;但不知道怎么下载Steam&am…

多微信管理不过来?你需要一个微信神器

很多企业都在面临以下几个问题&#xff1a; 1、希望进行微信营销转型&#xff0c;但是不知道如何入手&#xff1b; 2、拥有多个微信号&#xff0c;但不想拿着多台手机&#xff0c;希望能够集中管理所有微信号&#xff1b; 3、希望使用app替代传统的营销体系&#xff0c;并确…

04_SpringCloud

文章目录 单体架构与微服务架构的介绍单体架构微服务架构 微服务的实现服务之间的调用服务注册中心Eureka 注册中心Eureka的自我保护机制Nacos注册中心 单体架构与微服务架构的介绍 单体架构 单体架构 所有的代码最终打包成一个文件(jar包)&#xff0c;整个系统的所有功能单元…

Golang | Leetcode Golang题解之第71题简化路径

题目&#xff1a; 题解&#xff1a; func simplifyPath(path string) string {stack : []string{}for _, name : range strings.Split(path, "/") {if name ".." {if len(stack) > 0 {stack stack[:len(stack)-1]}} else if name ! "" &am…

代码随想录day19day20打卡

二叉树 1 二叉树的最大深度和最小深度 最大深度已经学习过了&#xff0c;实质就是递归的去判断左右子节点的深度&#xff0c;然后对其进行返回。 附加两个学习的部分&#xff1a; &#xff08;1&#xff09;使用前序遍历的方法求解 int result; void getdepth(TreeNode* nod…

python爬虫学习------scrapy第三部分(第三十一天)

&#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; &#x1f388;&#x1f388;所属专栏&#xff1a;python爬虫学习&#x1f388;&#x1f388; ✨✨谢谢大家捧场&#xff0c;祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天…

【牛客】排列计算

原题链接&#xff1a;登录—专业IT笔试面试备考平台_牛客网 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 如果直接涂色来计算单点权重&#xff0c;2e5*2e5必然超时。 所以用差分进行优化。 3. 代码实现 #include<bits/stdc.h> using name…

5000A信号发生器使用方法

背景 gnss工作需要使用的5000A&#xff0c;所以做成文档&#xff0c;用于其他员工学习。 下载星历数据 https://cddis.nasa.gov/archive/gnss/data/daily/2024/brdc/ 修改daily中的年份&#xff0c;就可以获取相关截至时间的星历数据 brcd数据格式 第一行记录了卫星的PRN号&a…

搭建Harbor仓库

文章目录 Harbor仓库搭建Harbor仓库安装 docker 服务修改配置文件 Harbor仓库 搭建Harbor仓库 下载 Harbor 仓库 安装 docker 服务 # step 1: 安装必要的一些系统工具 yum install -y yum-utils device-mapper-persistent-data lvm2 # Step 2: 添加软件源信息 yum-config-m…

速览Coinbase 2024Q1 财报重点:业务全面开花,净利润达11.8亿美元

作者&#xff1a;范佳宝&#xff0c;Odaily 星球日报 近期&#xff0c;Coinbase 发布了其 2024 年第一季度财报。 报告显示&#xff0c;Coinbase 第一季度营收为 16.4 亿美元&#xff0c;高于分析师平均预期的 13.4 亿美元&#xff1b;净利润为 11.8 亿美元&#xff0c;合每股…

(四)JSP教程——request内置对象

request对象是将客户端浏览器数据提交给服务器端JSP页面的唯一数据通道&#xff0c;通过该通道JSP页面能够获取浏览器信息、form表单信息、URL参数信息等。 1.from表单向JSP文件传递数据 form表单是浏览器向服务器传递数据的一种基本机制&#xff0c;包含两种方式&#xff1a;…

2024.05.07作业

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);//窗口相关设置this->resize(540,415);this->setFixedSize(540,415);//窗口标题this->setWindowTitle…