gpt4 book ai didi

linux - 如何从文件中的同一行随机选择字符串

转载 作者:可可西里 更新时间:2023-11-01 11:48:27 26 4
gpt4 key购买 nike

我已经阅读了 Select random lines from a file in bashRandom selection of columns using linux command 这篇文章,但是它们并不专门用于需要保持相同顺序的一组行。我还使用 cut 命令搜索了是否有任何随机化选项。

我的尝试:

我正在尝试用新行替换空格,然后随机排序,然后使用 Head 获取随机字符串(对于每一行)。

cat file1.txt | while read line; do echo $line | sed 's/ /\n/g' | sort -R | head -1

虽然这确实完成了一个随机字符串的基本工作,但我想知道是否有更好更有效的方法来编写这段代码?这样,我可以添加选项以获取 1-2 个随机字符串,而不仅仅是一个。

这里是 file1.txt:

#Sample #Example #StackOverflow #Question
#Easy #Simple #Code #Examples #Help
#Support #Really #Helps #Everyone #Learn

这是我想要的输出(随机值):

#Question
#Code #Examples
#Helps

如果您知道实现此代码的更好方法,我将非常感谢您的积极投入和支持。

最佳答案

这就是解决方案

while read -r line; do echo "$line" | grep -oP '(\S+)' | shuf -n $((RANDOM%2+1)) | paste -s -d' '; done < file1.txt

关于linux - 如何从文件中的同一行随机选择字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46895027/

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