我想获取一个文本文件,并为每一行随机化单词/列。这些文件可能包含数百万行,因此效率非常重要。我尝试过谷歌路线,但我发现的一切都与随机排序而不是列相关。
例如,使用这样的简单文件(我会使用数字,但它们可能是单词):
111 222 333 444 555
555 666 777 888 999 000
000 333 555 777
输出可能如下所示:
222 111 555 444 333
777 555 666 000 999 888
777 333 000 555
答案 0 :(得分:0)
Perl救援:
perl -MList::Util=shuffle -lne 'print join " ", shuffle split' < input.txt > output.txt
-l
在print
-n
逐行处理输入split
在空格上分割输入行shuffle
(来自List::Util)随机播放列表join " "
从列表中创建一个字符串,在成员之间放置一个空格。