Linux下随机选取多行数据,输出到文本文件的命令是?

 我来答
百度网友1e30425
2016-06-03 · TA获得超过147个赞
知道答主
回答量:77
采纳率:100%
帮助的人:9.6万
展开全部
一条命令就可以搞定,直接用shuf -n5 t.txt > L则随机在t.txt 中抽取5列 到L中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
愤怒的大bird
推荐于2018-03-11 · 超过15用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:35.8万
展开全部

老兄你问题有点看不明白啊!

你要是选取指定行数据 就用sed

比如说你要去一个文件的  5-10行数据

sed -n '1,5p' filename
追问
不是指定行啊,比如一个文件有1000W行,我想随机选10W行数据,然后把选取的结果保存到一个txt里~
追答

随机的函数 shell的我还真不知道  python的我到知道

import random
import linecache 
#一个1到1000w的list列表
Random_number_list=[x for x in range(10000000)]
#从1到10W的列表中随机获取10W个数字,之后当行号 
Randon_data_line= random.sample(Random_number_list,100000)
#打开一个要写入你随机出来10W行的数据,a+相当于shell的“>>”追加写 
write_fname=open('aa.txt','a+')
#循环10w的那个列表  
for tmp_line in Randon_data_line:
#读取随机10W行数据 
    tmpdata=linecache.getline('read_data.txt',tmp_line)
#并写入到你要写入的文件aa.txt 
    write_fname.write(tmpdata)
#关闭aa.txt 
write_fname.close()  


你试试,这样应该可以
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式