应用办公生活信息教育商业
投稿投诉
商业财经
汽车智能
教育国际
房产环球
信息数码
热点科技
生活手机
晨报新闻
办公软件
科学动态
应用生物
体育时事

文本分析(课题研究常用方法)

  文本分析(课题研究常用方法)
  awk是流式编辑器,针对文档中的行来操作,一行一行地执行。awk可以非常方便、高效地操作文档以及字符,从而实现我们想要的格式。它的功能非常强大,我在shell脚本中经常使用它来处理字符串。下面介绍几个在工作中使用awk较频繁的用法。
  1。截取文档中的某个段
  示例命令如下:headn2test。txtawkF39;:39;39;{print1}39;rootbin
  本例中,F选项的作用是指定分隔符。如果不加F选项,则以空格或者tab为分隔符。print为打印的动作,用来打印某个字段。1为第1个字段,2为第2个字段,以此类推。但0比较特殊,它表示整行:headn2test。txtawkF39;:39;39;{print0}39;root:x:0:0:root:root:binbashbin:x:1:1:bin:bin:sbinnologin
  注意awk的格式,F后面紧跟单引号,单引号里面为分隔符。print的动作要用{}括起来,否则会报错。print还可以打印自定义的内容,但是自定义的内容要用双引号括起来,如下所示:headn2test。txtawkF39;:39;39;{print1234}39;rootx00binx11
  2。匹配字符或者字符串
  在文档中过滤出包含指定字符串的行,示例命令如下:awk39;oo39;test。txtroot:x:0:0:root:root:binbashlp:x:4:7:lp:varspoollpd:sbinnologinmail:x:8:12:mail:varspoolmail:sbinnologinoperator:x:11:0perator:root:sbinnologinpostfix:x:89:89::varspoolpostfix:sbinnologinsetroubleshoot:x:992:990::varlibsetroubleshoot:sbinnologin
  这跟sed的用法类似,能实现grep的功能,但没有颜色显示,肯定没有grep用起来方便。不过awk还有比sed更强大的匹配,如下所示:awkF39;:39;39;1oo39;test。txtroot:x:0:0:root:root:binbashsetroubleshoot:x:992:990::varlibsetroubleshoot:sbinnologin
  它可以让某个段去匹配,这里的就是匹配的意思。
  此外,awk还可以多次匹配,如下所示:awkF39;:39;39;root{print1,3}test{print1,3}39;test。txtroot0operator11test1006
  本例中,awk匹配完root,再匹配test,并且只打印所匹配的段。
  3。条件操作符
  有时候,在匹配字符的同时要给出限定条件,比如第3段为0。示例命令如下:awkF39;:39;39;3039;etcpasswdroot:x:0:0:root:root:binbash
  在awk中,我们可以用逻辑符号进行判断,比如就是等于,也可以理解为精确匹配。另外,还有gt;、gt;、、code、code!等。值得注意的是,在和数字比较时,若把要比较的数字用双引号引起来,那么awk不会将其认为是数字,而会认为是字符,不加双引号就会认为是数字。示例命令如下:codecodeawkF39;:39;39;3gt;50039;etcpasswdheadn5shutdown:x:6:0:shutdown:sbin:sbinshutdownhalt:x:7:0:halt:sbin:sbinhaltmail:x:8:12:mail:varspoolmail:sbinnologinnobody:x:65534:65534:KernelOverflowUser::sbinnologindbus:x:81:81:Systemmessagebus::sbinnologin
  本例中,阿铭本想把uid大于等于500的行打印出来,但是结果并不理想。这是因为awk把所有的数字都当作字符了,就跟上一章中提到的sort排序原理一样。但是,如果不加双引号,就得到了想要的结果:awkF39;:39;39;3gt;50039;etcpasswdheadn5nobody:x:65534:65534:KernelOverflowUser::sbinnologinsystemdcoredump:x:999:997:systemdCoreDumper::sbinnologinpolkitd:x:998:996:Userforpolkitd::sbinnologingeoclue:x:997:995:Userforgeoclue:varlibgeoclue:sbinnologinunbound:x:996:991:UnboundDNSresolver:etcunbound:sbinnologinawkF39;:39;39;7!sbinnologin39;etcpasswdroot:x:0:0:root:root:binbashsync:x:5:0:sync:sbin:binsyncshutdown:x:6:0:shutdown:sbin:sbinshutdownhalt:x:7:0:halt:sbin:sbinhaltaminglinux:x:1000:1000:aminglinux:homeaminglinux:binbash
  上例中,!表示不匹配,它除了针对某一个段的字符进行逻辑比较外,还可以在两个段之间进行逻辑比较。如下所示:awkF39;:39;39;3
  另外,还可以使用amp;amp;和,它们分别表示并且和或者。amp;amp;的用法如下:awkF39;:39;39;3gt;5amp;amp;3
  的用法如下:awkF39;:39;39;3gt;10007binbash39;etcpasswdroot:x:0:0:root:root:binbashnobody:x:65534:65534:KernelOverflowUser::sbinnologinaminglinux:x:1000:1000:aminglinux:homeaminglinux:binbash
  4。awk的内置变量
  awk常用的变量有OFS、NF和NR。OFS和F选项有类似的功能,也是用来定义分隔符的,但是它是在输出的时候定义的。NF表示用分隔符分隔后一共有多少段。NR表示行号。
  OFS的用法示例如下:head5etcpasswdawkF39;:39;39;{OFS}{print1,3,4}39;root00bin11daemon22adm34lp47
  还有更高级一些的用法:awkF39;:39;39;{OFS}{if(3gt;1000){print1,2,3,4}}39;etcpasswdnobodyx6553465534aminglinuxx10001000
  变量NF的具体用法如下:headn3etcpasswdawkF39;:39;39;{printNF}39;777headn3etcpasswdawkF39;:39;39;{printNF}39;binbashsbinnologinsbinnologin
  这里NF是多少段,NF是最后一段的值。变量NR的具体用法如下:headn3etcpasswdawkF39;:39;39;{printNR}39;123
  我们还可以使用NR作为判断条件,如下所示:awk39;NRgt;4039;etcpasswdinsights:x:978:976:RedHatInsights:varlibinsights:sbinnologinsshd:x:74:74rivilegeseparatedSSH:varemptysshd:sbinnologinavahi:x:70:70:AvahimDNSDNSSDStack:varrunavahidaemon:sbinnologintcpdump:x:72:72:::sbinnologinaminglinux:x:1000:1000:aminglinux:homeaminglinux:binbash
  NR也可以配合段匹配一起使用,如下所示:awkF39;:39;39;NR
  5。awk中的数学运算
  awk可以更改段值,示例命令如下:headn3etcpasswdawkF39;:39;39;1root39;rootx00rootrootbinbashrootx11binbinsbinnologinrootx22daemonsbinsbinnologin
  awk也可以对各个段的值进行数学运算,示例命令如下:headn2etcpasswdroot:x:0:0:root:root:binbashbin:x:1:1:bin:bin:sbinnologinheadn2etcpasswdawkF39;:39;39;{734}39;headn2etcpasswdawkF39;:39;39;{734;print0}39;rootx00rootroot0binx11binbin2
  awk还可以计算某个段的总和,示例命令如下:awkF39;:39;39;{(tottot3)};END{printtot}39;etcpasswd84699
  这里的END是awk特有的语法,表示所有的行都已经执行。如下所示:awkF39;:39;39;{if(1root){print0}}39;etcpasswdroot:x:0:0:root:root:binbash
  其实awk可以写成一个脚本文件,而且有它特有的语法。在awk中使用if判断、for循环都可以,只是在日常管理工作中,使用那么复杂的语句并不常见。
  最后,我们再附上常见正则字符的解释。
  。表示任意一个字符,比如空格、特殊符号等。
  表示前面的字符有0个或多个,比如a那就是0个a或者多个a。
  。表示任意个任意字符,就是贪婪匹配了。
  就是前面的字符有1个或者多个,如a就是a、aa、aaa
  ?就是?前面的字符有1个或者0个。
  {}里面是一个范围,如{1,5}就是{}前面的字符有15个。
  表示或者,如ab就是a或者b。
  表示这里面的任意一个字符,如〔abc〕就是a或者b或者c。此外,也可以用范围〔09〕表示任意一个数字,用〔az〕表示任意一个小写字母。

小米手机质保多久(小米手机突然没有声音了怎么回事)保质期指的是食物的最佳食用期限,每种食物都有不同的保质期,小米有没有保质期,他的保质期又是多少呢,比如放了两三年的小米,还能吃吗?小米,是谷子去皮后的产物,小米的营养价值很高,含丰微信语音没声音怎么回事(苹果手机发语音录不上声音)苹果系统手机语音没声音怎么办呢?很多用户对此还不是很清楚,有很多小伙伴私信点点,点点这里就教给小伙伴们,苹果系统手机语音没声音的简单处理方法,希望能够对小伙伴们有所帮助。操作步骤1今日回收金价大盘价目前金价回收多少钱一克现在金店回收黄金多少钱一克每日变动的,2013年黄金多少钱一克深圳水贝黄金价格今天多黄金回收价一克多少,黄金回收价格2330元克黄金纯度99以上菜百黄金回收价格3280元克黄金纯度河北文安回应农村一方土仅卖5元具体是什么情况近日有关于河北文安回应农村一方土仅卖5元的问题受到了很多网友们的关注,大多数网友都想要知道河北文安回应农村一方土仅卖5元的具体情况,那么关于到河北文安回应农村一方土仅卖5元的相关信俄新5卢布硬币激怒日本人什么原因硬币啥样近日俄新5卢布硬币激怒日本人登录了热搜,也是在网上引起了网友们的关注,那么很多小伙伴可能还不清楚具体的情况如何,小编也是在网上查阅了一些信息,那么接下来就分享给大家来了解下俄新5卢俄新5卢布硬币激怒日本人近日俄新5卢布硬币激怒日本人登录了热搜,也是在网上引起了网友们的关注,那么很多小伙伴可能还不清楚具体的情况如何,小编也是在网上查阅了一些信息,那么接下来就分享给大家来了解下俄新5卢日本二季度GDP创二战后最大降幅具体是什么情况近日日本二季度GDP创二战后最大降幅登录了热搜,也是在网上引起了网友们的关注,那么很多小伙伴可能还不清楚具体的情况如何,小编也是在网上查阅了一些信息,那么接下来就分享给大家来了解下河南未婚女子5地被结婚具体是什么情况近日河南未婚女子5地被结婚登录了热搜,也在网上引起了网友们的关注,那么很多小伙伴可能还不清楚具体的情况如何,小编也是在网上查阅了一些信息,那么接下来就分享给大家来了解下河南未婚女子吉林5岁萌娃开玩具车完美倒车入库具体是什么情况对于想考驾照的小伙伴来说,科目二的倒车入库可以说是一个大难点了。但是近日,吉林有一个5岁小男孩,小小南极驾驶玩具车就可以完美倒车入库,网友直呼老司机。那么倒车入库有哪些方法与技巧呢5岁萌娃开玩具车完美倒车入库具体是什么情况对于很多成年人来说,开车并不是一件简单的事,很多人在考驾照的时候都经历过挂科补考,尤其是倒车入库这一项对于很多人来说都是一个难题,可倒车入库对于吉林的一位5岁萌娃来说可是一件非常简5岁萌娃开玩具车倒车入库具体是什么情况近日网上有一则视频引起了网友们的关注,竟然是说的一位5岁萌娃开玩具车完美倒车入库,很多有驾驶证的网友就表示这样的操作自己有证的人都是佩服不已,那么这个5岁萌娃开车到底是怎么一回事呢
花心男人(治花心男人最好的方法)花心男人(治花心男人最好的方法)图片来自网络,图文无关读者来信木子李我和前夫相亲认识并结婚。当时,我对前夫并不太满意,但是,我父母则非常喜欢我前夫。就这样,我俩糊里糊涂结婚了。和前风流是什么意思(花心是什么意思)正所谓男人花心是风流,有多少男人能不花心呢这句话的意思是花心是大多数男人的本性,是很难改变的,然而花心并不意味着出轨,这两者的区别在于有没有跨越身体的红线,如果有了亲密的身体接触,哪个星座最花心(十二星座谁花心)十二星座的性格虽然各不相同,但是在感情上面还是有些生肖存在共性的。有的生肖对感情忠贞不二,对家庭充满责任心有的生肖生性浪漫,向往自由。可以说是各有各的不同,在这些面对感情的态度里面华为nova7开启守护隐私数据的方法是什么近日华为nova7开启守护隐私数据登录了热搜,也是在网上引起了网友们的关注,那么很多小伙伴可能还不清楚具体的情况如何,小编也是在网上查阅了一些信息,那么接下来就分享给大家来了解下华一般拆婚法事多久见效做过法事复合的人进来说说泰国法事黑法降头术1640078839师兄微信拆婚降,离婚降,诅咒小人降,惩罚小三降头术,招财降,五鬼财运降,平安化解小人法事,和合法事,墓地情降,情蛊降,血降惩罚恶人164007拆散法事有人做过拆婚法事吗让两个人分开的法事法事复合真的有效果泰国黑法情降师傅微信1640078839降头术蛊毒符灵婴超度咒巫毒旺旺护身符巫术毒娃娃拆散法事拆散符拆散术微信1640078839拆婚符拆散降拆散法事拆婚法事回心转意法事爱情降头术抖音分手后想挽回对方的感动句子(抖音挽回前任的)图片世界上最可贵的是爱情,最残酷的也是爱情。在一起时的轰轰烈烈,分开时的痛苦难舍,最纠缠的仍然是爱情。现在的年轻人都爱用文字来表达自己的情感,特别是在挽回爱情的时候,都特别喜欢用发向华强向华胜(向华胜为什么葬八宝山)向华强向华胜(向华胜为什么葬八宝山)说到曾经京城四少,许多人应该都听说过,这里面还有新旧两个版本,新的就是王思聪潘瑞张量王烁。旧的版本是王珂汪小菲汪雨王烁。这里面旧版本,其实真正有养尊处优什么意思(养尊处优到了什么程度)养尊处优什么意思(养尊处优到了什么程度)综述曹雪芹写的四大名著之一红楼梦,可谓是中国文学上的一大瑰宝。红楼梦主要围绕着林黛玉以及贾府的一大家子来写的故事,很多人说第一次看红楼梦,连假如爱是你给的牢(男人会有不同的心理变化)假如爱是你给的牢(男人会有不同的心理变化)就像春光乍泄中的一句话我终于来到瀑布,我突然想起何宝荣,我觉得好难过,我始终认为站在这儿的应该是两个人。即使是相互爱惜,相互疼爱的两个人,怎么挽回前男友(挽回前男友聊天怎么聊)最近很多小伙伴问我我们分手一段时间了,我最近几天总是忍不住想联系他,好痛啊!我该怎么办?我应该联系他吗?我的观点是,分手以后如果忍不住想联系前任,那就去联系吧,千万不要压制这个想法
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网