当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 6 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 请教,在shell中,如何将log打印出来的几行,赋值给数组
帖子发表于 : 2013-02-07 15:32 

注册: 2013-02-07 11:08
帖子: 9
系统: win7
送出感谢: 0 次
接收感谢: 0 次
举个例子。我运行出来的log如下:
02-07 15:23:49: android.hardware.cts.CameraGLTest#testCameraToSurfaceTextureMetadata PASS
02-07 15:23:56: android.hardware.cts.CameraGLTest#testSetPreviewTextureBothCallbacks PASS
02-07 15:24:04: android.hardware.cts.CameraGLTest#testSetPreviewTexturePreviewCallback PASS
02-07 15:24:12: android.hardware.cts.CameraGLTest#testSetPreviewTextureTextureCallback PASS

我定义了一个数组,Fail[$Pass_Num], $Pass_Num=logcat | grep PASS, 怎样把这四行赋给数组Fail[4]。。。。

PS:还想多问句,怎么“android.hardware.cts.CameraGLTest” 和 “testCameraToSurfaceTextureMetadata”,分离出来。。。知道用grep,但不知道后面怎么用了。


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 请教,在shell中,如何将log打印出来的几行,赋值给数组
帖子发表于 : 2013-02-07 17:04 
头像

注册: 2010-06-16 1:05
帖子: 14668
地址: Tencent
系统: Mac OS X
送出感谢: 1
接收感谢: 153
一个for循环搞定,分割数据用cut就行了吧,用awk更强大


_________________
twitter求fo:http://twitter.com/maplebeats
博客求踩:http://maplebeats.com


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 请教,在shell中,如何将log打印出来的几行,赋值给数组
帖子发表于 : 2013-02-07 17:07 
头像

注册: 2006-04-12 18:54
帖子: 4671
送出感谢: 0 次
接收感谢: 7
对于标准的std输出,可以用``把它包起来作为变量(1左边哪里)

比如 `ls`


_________________
荃创想


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 请教,在shell中,如何将log打印出来的几行,赋值给数组
帖子发表于 : 2013-02-07 17:08 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 274
shell下的数组是鸡肋。
你的结果,肯定不是需要数组,而且想提取内容字段,不如直接问想要啥结果。


_________________
● 鸣学


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 请教,在shell中,如何将log打印出来的几行,赋值给数组
帖子发表于 : 2013-02-17 11:37 

注册: 2013-02-07 11:08
帖子: 9
系统: win7
送出感谢: 0 次
接收感谢: 0 次
枫叶饭团 写道:
一个for循环搞定,分割数据用cut就行了吧,用awk更强大

我用cut已经能够把log每一行截取出“testCameraToSurfaceTextureMetadata”,下面3行同样。。。我之所以想到数组,我简单解释下工作需求吧。
1楼的log是我们自动化运行的结果,里面有些会Fail,所以我们需要知道运行哪个case时fail了,“android.hardware.cts.CameraGLTest#testCameraToSurfaceTextureMetadata”,就是case的名称。我们就需要手动把这个case运行20次,看看fail的概率。因为手动需要人工输入命令,所以会耽误白天时间。我就是想把这4个case存成数组,用个for里面嵌套个for,这样每个case能自动运行手动的命令。白天来了,就能看到所以的结果了。。。。呵呵,不知道我说的明白否。。。
:em05


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 请教,在shell中,如何将log打印出来的几行,赋值给数组
帖子发表于 : 2013-02-17 14:45 

注册: 2013-02-07 11:08
帖子: 9
系统: win7
送出感谢: 0 次
接收感谢: 0 次
eexpress 写道:
shell下的数组是鸡肋。
你的结果,肯定不是需要数组,而且想提取内容字段,不如直接问想要啥结果。

可能是我表述的不清楚,我不止要提取字段,提取出的字段后面还要用。。。
{
我用cut已经能够把log每一行截取出“testCameraToSurfaceTextureMetadata”,下面3行同样。。。我之所以想到数组,我简单解释下工作需求吧。
1楼的log是我们自动化运行的结果,里面有些会Fail,所以我们需要知道运行哪个case时fail了,“android.hardware.cts.CameraGLTest#testCameraToSurfaceTextureMetadata”,就是case的名称。我们就需要手动把这个case运行20次,看看fail的概率。因为手动需要人工输入命令,所以会耽误白天时间。我就是想把这4个case存成数组,用个for里面嵌套个for,这样每个case能自动运行手动的命令。白天来了,就能看到所以的结果了。。。。呵呵,不知道我说的明白否。。。
}


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 6 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:Google [Bot] 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译