当前位置: 首页 > news >正文

Linux 随机数据生成

目录

  • 一. `/dev/urandom`
    • 1.1 dd 命令
    • 1.2 head命令
    • 1.3 随机字母
  • 二. openssl 命令
  • 三. yes命令


一. /dev/urandom

/dev/urandom 是 Linux 和 Unix 系统中的一个特殊文件,它是一个伪随机数生成器,用于提供高吞吐量的随机数据。

1.1 dd 命令

  • bs=1M count=10:每次写入1M的文件,共写入10次
  • status=progress:用于在 dd 命令执行过程中显示进度信息
dd if=/dev/urandom bs=1M count=10 of=test_content.txt status=progress

1.2 head命令

head -c 10M /dev/urandom > test_content.txt
# 随机数据被转换被 base64 编码处理
head -c 10M /dev/urandom | base64 > test_content.txt

1.3 随机字母

  • 随机生成10个随机字母
cat /dev/urandom | tr -dc 'a-zA-Z' | head -c 10

⏹随机生成1M的随机字母+数字字符串

  • -d:删除(delete)
  • -c:取反(complement)
  • 删除除了a-zA-Z0-9之外的所有字符
tr -dc 'a-zA-Z0-9' </dev/urandom | head -c 1M

二. openssl 命令

  • rand:生成随机字节数据
  • -base64:随机数据编码为 Base64 格式
  • -hex:随机数据编码为 十六进制格式
  • $((1024*1024*10)):10M的数据
openssl rand -base64 $((1024*1024*10)) -out test_content.txt
openssl rand -hex $((1024*1024*10)) -out test_content.txt

三. yes命令

⏹yes 命令是 Linux 中一个有趣且实用的工具,主要用于不断输出某个字符串,常见用途包括

  • 自动确认提示
  • 压力测试等
# 因为不能让yes命令一直执行下去,所以通过head命令限制输出文件的大小
yes "hello world" | head -c 10M > repeated.txt

相关文章:

  • 从零构建大语言模型全栈开发指南:第三部分:训练与优化技术-3.2.1模型并行与数据并行策略(ZeRO优化器与混合精度训练)
  • Kubenetes Service类型与应用场景、YAML模板以及练习
  • 计算机网络面经(一)
  • Redis-02.Redis入门
  • python 原型链污染学习
  • 深度求索:开源革命下的AI普惠之路
  • JavaScript创建时间对象、数字、字符串方法
  • Python-八股总结
  • RabbitMQ、RocketMQ 和 Kafka 的消息特性对比
  • 用mkdocs写文档#自动更新github-page
  • 浙江大学公开课|第二季|智能金融:AI 驱动的金融变革
  • Vue3中的Parent-Child通信全解析
  • flink 基站与服务器长连接,每次连接和断开都会上报数据,统计过去一小时每个基站断开次数和时长
  • 如何保证云服务器的可靠性与可用性
  • Playwright页面对象模型POM + 常见断言 + playwright接口断言 + 参数化
  • 深入理解 DNS:互联网的“电话簿”
  • 【DPI】精讲深度数据包检测技术基础
  • Oracle数据库数据编程SQL<3.3 PL/SQL 游标>
  • 关于中文编程的一些思考
  • 使用 Cheerio 和 Node.js 进行网络抓取
  • 许昌市网站建设科技/天天外链
  • 网站服务器商/电商培训机构排名前十
  • 应用软件和嵌入式软件的区别/外贸网站优化推广
  • 做网站多久学会/国内真正的永久免费砖石
  • 易尔通做网站怎么样/seo服务方案
  • 玻璃制品东莞网站建设/郑州百度关键词seo