如何在linux中创建一个随机的.txt(人类可读的文本,如ascii)文件

Chi*_*nna 49 linux

我需要创建一个文本文件,它应该包含可以被人类阅读的随机文本数据。我知道我们可以使用/dev/urandom/dev/random获取随机数据。但它不是人类可读的。我需要创建一个包含随机文本格式的文件。有没有办法做到这一点?

Chi*_*nna 117

我们可以通过以下命令来完成

base64 /dev/urandom | head -c 10000000 > file.txt
Run Code Online (Sandbox Code Playgroud)

它创建一个名为 file.txt 的文件,大小为 10 MB。

  • 这太棒了,它还每 76 个字符添加一个换行符。 (4认同)

小智 16

得到输出:

tr -dc A-Za-z0-9 </dev/urandom 
Run Code Online (Sandbox Code Playgroud)

并将其通过管道传输到文件。

您可以使用带有 -c 或 -n 的head命令来限制文件大小

生成 1kB 文件 a.txt 的示例:

tr -dc A-Za-z0-9 </dev/urandom | head -c 1024 > a.txt
Run Code Online (Sandbox Code Playgroud)


小智 6

wamerican软件包提供了 下可用的单词词典/usr/share/dict/words

您可以使用以下技巧来使用它们:

cat /usr/share/dict/words | sort -R | head -1024 > file.txt
Run Code Online (Sandbox Code Playgroud)

请注意,您没有指定几何形状(每行有多少个单词,有多少行?)


dou*_*gle 5

如果您没有 /dev/urandom (因为也许您正在使用 GitBash 控制台),您可以使用:

openssl rand 33000 -base64 -out dump.txt
Run Code Online (Sandbox Code Playgroud)