gpt4 book ai didi

linux - 如何为 Linux SORT 的 --random-sort 选项设置任意种子?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:12:48 25 4
gpt4 key购买 nike

在 SORT 的手册页中,它说您可以设置一个随机源,例如:

$ sort some.txt --random-sort --random-source=/dev/urandom

我想要一个标准的输出文本到源,如:

$ sort some.txt --random-sort --random-source=`date +"%m%d%H%M"`

但这只是说:

open failed: 11021103: No such file or directory

我该怎么做?

最佳答案

这是一个简单的 python 脚本,它接受一个种子并输出随机字节:

> cat rand_bits.py
import random
import sys

if len(sys.argv) > 1:
rng = random.Random(int(sys.argv[-1]))
else:
rng = random.Random(0xBA5EBA11)

try:
while True:
sys.stdout.write(chr(rng.getrandbits(8)))
except (IOError, KeyboardInterrupt):
pass
sys.stdout.close()

您可以直接将这些字节送入排序:

> sort <(seq 25) -R --random-source=<(python rand_bits.py 5) 
8
2
4
7
10
19
17
11
3
20
14
18
1
16
25
12
5
21
24
23
22
9
15
13
6

顺便说一句,输入可以是任何文件,但文件最好足够长!

> sort <(seq 25) -R --random-source=<(date +"%m%d%H%M")   
sort: /dev/fd/12: end of file
> sort <(seq 25) -R --random-source=/dev/sda1
3
13
24
5
10
16
4
17
12
18
14
2
6
15
23
21
19
11
9
1
20
25
22
8
7

关于linux - 如何为 Linux SORT 的 --random-sort 选项设置任意种子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26695321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com