我有大约 100 行的输入。我想“随机”地打乱它们,但我想控制它。即,我想为随机数生成器播种,以始终产生相同的顺序。
我以为我可以使用bash(1)'s
$RANDOM
变量,但这总是产生不同的输出。哪里出了问题?
RANDOM=1 cat myfile | while read LINE ; do echo "$RANDOM $LINE" ; done | sort
答案1
该管道由 3 个不同的过程组成,因此您需要RANDOM
在适当的过程中进行播种:
cat myfile |
(RANDOM=1; while read LINE ; do echo "$RANDOM $LINE" ; done ) |
sort