免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 草肃威
打印 上一主题 下一主题

4亿行数据,挑出长度不合要求的行 [复制链接]

论坛徽章:
0
41 [报告]
发表于 2010-06-17 20:54 |只看该作者
我想知道,怎么随机生成4亿行小于等于10个字符的文件啊?也写一个脚本看看啊

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
42 [报告]
发表于 2010-06-18 00:39 |只看该作者
楼上具体的需求是什么?只要求每行的长度是随机数1-10吗?全是字符A可以吗?
A
AAAA
AAA
AAAAAA
......

论坛徽章:
0
43 [报告]
发表于 2010-06-18 08:41 |只看该作者
回复 42# beginner-bj


    全是同一个字符的也可以,最好是不同字符的组合。

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
44 [报告]
发表于 2010-06-18 09:11 |只看该作者
AIX KSH下写了个输出40行的例子
  1. a=1
  2. while [ $a -le 40 ];do
  3.    LENGTH=$((RANDOM%10+1))
  4.    b=1
  5.    while [ $b -le $LENGTH ];do
  6.        printf A
  7.        ((b=$b+1))
  8.    done
  9.    printf "\n"
  10.    ((a=$a+1))
  11. done
复制代码

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
45 [报告]
发表于 2010-06-18 09:16 |只看该作者
输出任意字符的例子,调用了perl进行ASCII转换。同样是AIX KSH。
  1. a=1
  2. while [ $a -le 40 ];do
  3.    LENGTH=$((RANDOM%10+1))
  4.    b=1
  5.    while [ $b -le $LENGTH ];do
  6.        ASCII=$((RANDOM%95+32))
  7.        perl -le "printf chr($ASCII)"
  8.        ((b=$b+1))
  9.    done
  10.    printf "\n"
  11.    ((a=$a+1))
  12. done
复制代码

论坛徽章:
0
46 [报告]
发表于 2010-06-18 09:22 |只看该作者
回复 45# beginner-bj


    学习了

论坛徽章:
1
CU十二周年纪念徽章
日期:2013-10-24 15:41:34
47 [报告]
发表于 2010-06-18 15:25 |只看该作者
回复  草肃威


    如果使用C语言 ssccanf 会不会更快些?
juyi 发表于 2010-06-13 14:16



    sscanf吧?

论坛徽章:
0
48 [报告]
发表于 2010-06-18 17:08 |只看该作者
都是高玩啊!吾等只有看的份。

论坛徽章:
0
49 [报告]
发表于 2010-06-18 23:48 |只看该作者
考虑SHELL执行效率,改了一下。
  1. #!/bin/bash
  2. a=1
  3. while [ $a -le 40 ];do
  4.    LENGTH=$((RANDOM%10+1))
  5.    ASCII=
  6.    for((i=0;i<LENGTH;i++))
  7.    do
  8.        ASCII="${ASCII}\x$((RANDOM%95+32))"
  9.    done
  10.    echo -e "$ASCII"
  11.    ((a=$a+1))
  12. done
复制代码

论坛徽章:
0
50 [报告]
发表于 2010-06-19 17:05 |只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP