Hi minek, On 11/04/2016 04:41 PM, minek van wrote: > Hello, > > # strings /dev/arandom | grep -o '[[:print:]]' | head -100 > a.txt > # sort -R a.txt > K ... > 9 > # uname -mrs > OpenBSD 6.0 amd64 > # > # sort -R a.txt > b.txt > # cksum b.txt > 3374888359 200 b.txt > # sort -R a.txt > b.txt > # cksum b.txt > 109071951 200 b.txt > # sort -R a.txt > b.txt > # cksum b.txt > 3441576000 200 b.txt > # > > from: http://man.openbsd.org/OpenBSD-current/man1/sort.1 > > -R, --random-sort, --sort=random > > Sort lines in random order. This is a random permutation of the inputs with the exception that equal keys sort together. It is implemented by hashing the input keys and sorting the hash values. The hash function is randomized with data from arc4random_buf(3), or by file content if one is specified via --random-source. If multiple sort fields are specified, the same random hash function is used for all of them. > > Although the "b.txt" differs, if we check it by the human eye... that is not random.. **Why**? Why is it called random, WHEN IT IS NOT RANDOM?! Random should mean RANDOM. Not "almost" random.. > > The same can be seen on ex.: RHEL7. >
I would guess this is the desired behavior. The man page cited by you also states: 'This is a random permutation of the inputs with the exception that equal keys sort together. It is implemented by hashing the input keys and sorting the hash values.' So clearly same values/strings will be put together. Best wishes Chris [demime 1.01d removed an attachment of type application/pkcs7-signature which had a name of smime.p7s]