首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux文件随机抽取N

有时候需要从大文件随机抽取N出来进行模拟,但是用python或者别的语言感觉不太方便,linux下直接分割感觉会更快捷。...一般可以考虑以下的方法: 1. shuf shuf -n100 filename # 从文件随机选取100 2. sort sort -R filename | head -n100 -R参数是将文件随机顺序...3. awk awk是一个处理文件神器,可以像下面这么写(别的写法也可实现): awk 'BEGIN{srand()} {print rand()"\t"$0}' filename | sort -nk...,必须写在BEGIN中才能正常运行;rand()是产生0到1之间的随机数。...第一列是产生的随机数。sort -nk 1是根据第一列排序,运行后输出: ? 因为种子不一样,所以结果与上图不同。 最后选取想要的行数,然后输出除了第一列的内容就可以了。

8.2K20
您找到你想要的搜索结果了吗?
是的
没有找到

Java实现随机人名抽取

- 使用数组、方法、循环等实现人名的随机抽取 ## 前言:         我们今天来写一个随机抽取用户名字的一个小程序,     首先我们思考这个需求他需要的条件,要抽取用户的名     字,...就要先有一个容器,来储存用户名字的数据,其次     要有随机的功能实现,因为要随机,所以还要有一个寻     找的功能,挨个寻找的功能需要循环来实现,再想一下     有寻找,找到了还继续往后找嘛...###### 2.实现随机的功能         这里实现随机的功能可以使用Math方法语句来实现     因为这是JDK里提前定义好的方法,可以直接拿来用,     直接新建new一个新的方法,...break;          }          num = (int) (Math.random() * 3);       } //将数组下标设置成随机数,就可以实现人名的随机抽取      ...System.out.println("被抽取的人是" + name[num]);    } } ``` - 代码仅供参考

1.2K10

linux查看文件有多少(WC)

wc -l filename 就是查看文件里有多少 wc -w filename 看文件里有多少个word。 wc -L filename 文件里最长的那一是多少个字。...wc命令 wc命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。 说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。...wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。 该命令各选项含义如下: -c 统计字节数 -l 统计行数 -w 统计字数 这些选项可以组合使用。...行数、字数、字节数、文件名 如果命令行中没有文件名,则输出中不出现文件名。...使用ls -lht命令显示当前目录下的所有文件,其中有一列就是显示这个文件的大小。

9.3K20

java按字节、字符、随机读取文件,并设置字符编码格式

首先介绍可能用到的java类: inputStream:是字节输入流的所有类的超类,是一个抽象类;返回0-225内的字节值,如果没有字节可以读取则返回-1; FileInputStream:读取文件中的字节...System.out.println("----------字节读取文件前1024个字节内容的方法-------------"); readFileByBytes(fileName);//读取文件前...);//读取文件中所有字节的方法 System.out.println("----------字节以每次读取512个字节,循环读取文件内容-------------"); readFileRoundBy512...(fileName);//以每次读取512个字节,循环读取文件内容 System.out.println("----------字节创建缓冲流读取读取文件内容-------------"); readFileBufferByte...=-1){ System.out.print(new String(buf,0,tempByte)); //不能使用println,否则会出现错的现象 } fis.close();

1.3K30

算法(二)蓄水池抽样算法快速随机抽取reads

fastq文件往往都很大,出于测试目的,我们经常要从fastq文件随机抽取reads,生成一个小一点的fastq文件,以加快测试效率。...假设我们要从一个包含大约100M reads的fastq文件随机抽取1M reads,该怎么办呢?...我们将问题简单化:假设我们要从一个txt文件中(不知道总共多少随机抽取M(fastq文件的处理与之类似,只不过fastq文件是压缩过的,且其一条记录由4组成),比较容易想到的是如下办法(伪代码)...该方法把文件整个读入内存,的确减少了程序读取文件的总次数。但是,当文件很大时,该方法消耗的内存就太大了(想像一下把一个8G的txt文件整个加载到内存时的糟糕情况)。...蓄水池抽样方法只需读取文件一次,且消耗的内存只有M大小,而不是整个文件。所以,程序运行的效率会大大提高。 蓄水池抽样算法适用于大数据随机抽样,其关键在于证明其抽样的步骤是等概率的。

1.3K10

文件随机读写

文件随机读写 文件随机读写 定义:读写操作时,不按照数据在文件中先后次序依次读写,而是可以对文件中任意位置的数据进行访问,在读写文件中特定数据时效率较高。...10.4.1 文件位置标记 为对文件读写的数据进行控制,系统为每个文件设置一个文件读写位置标记(简称文件位置标记),指示“要读写的下一个数据的位置”。...文件位置标记的定位 文件位置标记的定位 (1)void rewind(FILE *fp) 把fp指向文件文件位置标记定位到文件的开头位置,并清除文件结束标记和错误标记。...向文件尾方向偏移10个字节 fseek(fp, -10L, CUR_END); //文件尾开始,向文件头方向偏移10个字节 (3) long ftell(FILE *fp):返回fp所指向文件文件位置标记的值...例:在二进制文件integer.dat中存放有若干个整数,计算文件中奇数位置(第1、3、5、…)上的整数的和。

52620

如何在 Linux 系统通过命令行生成随机文件

1.当你不需要关心随机文件的内容,只需一个固定大小的文件 Solaris、Mac OS X等Unix系统中mkfile指令,可以产生指定大小的文件,而Linux上则没有 例子:mkfile -n 160g...产生count * bs字节的文件,1M 此方法生成随机文件的好处在于效率高(产生1G文件大概1s),创建的文件大小精确到字节 坏处也有 使用null字符来填充文件内容,文件统计时没有(wc -l...test.file为0) 2.当你不需要关心随机文件的内容,但期望测试文件能有统计的 将/dev/zero改为/dev/urandom,/dev/urandom是linux下的随机数生成器 关于/dev...3.当你关心文件随机内容行数,而不关心内容是否有所重复 这里的思路就是找一个参照文件(比如说2),将文件重新定向到新的文件,再mv覆盖保存,外加一个for循环。...> file2.txt && mv file2.txt file.txt; done 由于是阶乘,n=20左右已经是200W,效率会下降地比较厉害 4.当你关心随机文件的内容,而不想出现重复内容行情况

14.8K1216

零基础VB教程054期:随机抽取不重复的值

随机抽取不重复 1、假设有个数组n(9) 有十个数,分别存放在n(0)至n(9)中 2、要从n数组中随机抽取一个数,存放到数组m中 3、从n中每次随机抽取一个,重复抽取10次,抽完 4、每次抽取到的值,...都是不同的 5、存储在n数组中的值都是不同的,需要保证每次随机抽取到的值都是不同的 需要考虑如何才能从n中每次随机抽取到不同的值????...1、从n数组中抽取不同的值的时候,只要保证每次抽取到不同的索引值即可 2、如何保证每次抽取到不同的索引?...其实只要考虑每次抽取一个数组索引的时候,每抽取一个,只要将这个值删除,是的数组缩短一个 重申一个关键词 Redim 重新声明,只用这个关键词声明,意味着要清空原来数组 Redim preserve来重新声明后

1.4K20
领券