1

我想从一个文件中随机选择一些行(例如 20 行)并将其打印到另一个文件中,但我想固定一个种子,以便在输入文件相同的情况下获得相同的输出。

我发现选择几行的示例,它们的输出每次都不同,例如:

perl -e '$f="inputfile";$_=`wc -l $f`;@l=split( );$r=int rand(@l[0]);system("head -n$r $f|tail -20")'> outputfile

而那些谈论固定种子和伪随机的只是为了打印数字,而不是从文件中提取行,或者只是提取一行。是否有 unix 命令或 perl 或类似代码中的某些代码?( sort -R, --random-&shuf不起作用(使用 Mac OS X 10.5.8))。

4

1 回答 1

0

您可以通过 srand(); 设置种子;(例如 srand(5))获取 rand 的固定种子。

于 2013-06-20T07:45:03.720 回答