免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 7012 | 回复: 14

[文本处理] 如何快速生成2000万行数据 [复制链接]

论坛徽章:
0
发表于 2014-02-04 08:01 |显示全部楼层
文本三个要求
1,字符串长度为16  
2,字符串只能包含大小写字母和数字(随机的)
3,要求生成2000万行的TXT文本

想通过shell完成,不知最快需要多久

生成的部分文本:

  1. hISzOp0nkN9d2Amg
  2. Ztv3RtSMDXjjxqBa
  3. hyGpHQjO7qw0kMEL
  4. 1Rbx0t4Rsha8OpI4
  5. QQiZTaLrVOuL7fbH
  6. wpVEjkVyhHJKFYbg
  7. 5HGXesXmx8eJs1cF
  8. mTtRyMbwSUfRqIjz
  9. g0lJnydsFLwZ4MwY
  10. b7zWqdRQpvmsew8a
  11. spxYyPDaYb7mBpr1
  12. qgYakerzuTshVgo4
  13. k0cOnDR8HLCYOoRS
复制代码

论坛徽章:
39
辰龙
日期:2013-08-21 15:45:192015亚冠之广州富力
日期:2015-05-12 16:34:52亥猪
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17双鱼座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亚冠之卡尔希纳萨夫
日期:2015-05-24 15:24:35黄金圣斗士
日期:2015-12-02 17:25:0815-16赛季CBA联赛之吉林
日期:2017-06-24 16:43:52
发表于 2014-02-04 11:04 |显示全部楼层
本帖最后由 关阴月飞 于 2014-02-04 11:05 编辑

回复 1# sincerefly

试试这个:
  1. tr -dc A-Z-a-z-0-9 < /dev/urandom |fold -w 16 |head -20000000 >file
复制代码

论坛徽章:
0
发表于 2014-02-04 18:25 |显示全部楼层
回复 2# 关阴月飞


    十分感谢~  Thx

论坛徽章:
18
卯兔
日期:2013-09-27 17:41:0615-16赛季CBA联赛之佛山
日期:2016-07-09 17:34:45操作系统版块每周发帖之星
日期:2015-12-02 15:01:04IT运维版块每日发帖之星
日期:2015-12-02 06:20:00IT运维版块每日发帖之星
日期:2015-10-07 06:20:00IT运维版块每日发帖之星
日期:2015-10-03 06:20:00IT运维版块每日发帖之星
日期:2015-10-01 06:20:00羊年新春福章
日期:2015-04-01 17:56:06拜羊年徽章
日期:2015-04-01 17:56:062015年迎新春徽章
日期:2015-03-04 09:49:452015年辞旧岁徽章
日期:2015-03-03 16:54:15天秤座
日期:2015-01-14 06:39:28
发表于 2014-02-05 21:49 |显示全部楼层
大拿啊{:3_183:}

论坛徽章:
2
水瓶座
日期:2014-02-28 14:20:09辰龙
日期:2014-06-16 13:18:51
发表于 2014-02-08 16:50 |显示全部楼层
高大上啊

论坛徽章:
23
15-16赛季CBA联赛之吉林
日期:2017-12-21 16:39:27白羊座
日期:2014-10-27 11:14:37申猴
日期:2014-10-23 08:36:23金牛座
日期:2014-09-30 08:26:49午马
日期:2014-09-29 09:40:16射手座
日期:2014-11-25 08:56:112015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:0315-16赛季CBA联赛之山东
日期:2017-12-21 16:39:1915-16赛季CBA联赛之广东
日期:2016-01-19 13:33:372015亚冠之山东鲁能
日期:2015-10-13 09:39:062015亚冠之西悉尼流浪者
日期:2015-09-21 08:27:57
发表于 2014-02-08 17:17 |显示全部楼层
回复 2# 关阴月飞


tr -dc A-Z-a-z-0-9
需要修改为:
tr -dc A-Za-z0-9

否则会多出字符 “-”

论坛徽章:
39
辰龙
日期:2013-08-21 15:45:192015亚冠之广州富力
日期:2015-05-12 16:34:52亥猪
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17双鱼座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亚冠之卡尔希纳萨夫
日期:2015-05-24 15:24:35黄金圣斗士
日期:2015-12-02 17:25:0815-16赛季CBA联赛之吉林
日期:2017-06-24 16:43:52
发表于 2014-02-08 17:22 |显示全部楼层
回复 6# ly5066113


    确实!!! 学习了!

论坛徽章:
3
酉鸡
日期:2014-04-23 17:17:56丑牛
日期:2014-05-08 11:41:302015亚冠之德黑兰石油
日期:2015-08-03 11:14:27
发表于 2014-02-09 17:02 |显示全部楼层
厉害厉害,学习了!

论坛徽章:
3
酉鸡
日期:2014-04-23 17:17:56丑牛
日期:2014-05-08 11:41:302015亚冠之德黑兰石油
日期:2015-08-03 11:14:27
发表于 2014-02-09 17:41 |显示全部楼层
回复 2# 关阴月飞


    hi,月飞兄,关于这个tr的dc option能不能帮忙解释下,我在网上查了下,有如下解释,但是仍然不能理解,多谢了!
从这组命令的功能上tr -dc A-Za-z0-9 < /dev/urandom 来看,应该是从/dev/urandom这个设备中读取随机的内容,并通过tr命令过滤掉一部分,
A-Za-z0-9是用来指定要保留的部分,但是我还是对这个-dc比较纠结,麻烦解释下,多谢了!


-------------------------------------------------------------------------------
-c        指定 String1 值用 String1 所指定的字符串的补码替换。String1 的补码是当前语言环境的字符集中的所有字符,除了由 String1 指定的字符以外。如果指定了 -A 和 -c 标志都已指定,则与所有 8 位字符代码集合有关的字符将被补足。如果指定了 -c 和 -s 标志,则 -s 标志适用于 String1 的补码中的字符。
如果没有指定 -d 选项,则由 String1 指定的值的补码将放置到通过二进制值升序排列的数组中。

-d        从标准输入删除包含在由 String1 指定的字符串中的每个字符。
注:
当 -C 选项和 -d 选项一起指定时,将删除所有除 String1 指定的那些字符以外的字符。忽略 String2 的内容,除非也指定了 -s 选项。
当 -c 选项和 -d 选项一起指定时,将删除所有除 String1 指定的那些字符以外的字符。忽略 String2 的内容,除非也指定了 -s 选项。
-s        在重复字符序列中除去除第一个字符以外的所有字符。将 String1 所指定的字符序列在转换之前从标准输入中除去,并将 String2 所指定的字符序列从标准输出中除去。
String1        指定一个字符串。
String2        指定一个字符串。

论坛徽章:
3
酉鸡
日期:2014-04-23 17:17:56丑牛
日期:2014-05-08 11:41:302015亚冠之德黑兰石油
日期:2015-08-03 11:14:27
发表于 2014-02-09 17:46 |显示全部楼层
本帖最后由 jeffreyst 于 2014-02-09 17:47 编辑

之前工作有时会用到很大的文件来测试,用下面的办法也可以生成一个大文件
echo "1234567890" > file; cat < file >>file
这样的局限是,每行的字串是固定的,而且文件大小也没法管控,不知道这个命令一直执行的话,会不会把系统搞挂掉....
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP