|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln
Linuxshell编程之awk的用法
1.awk的利用
基础功效:在文件或字符串中基于指定例则扫瞄和抽失信息。awk抽失信息後,才干举行其他文本操纵。完全的awk剧本一般用来格局化文本文件信息。
挪用体例:1.命令行体例
2.将一切awk命令拔出一个文件,并使awk程序可实行,然后使awk命令注释器作为剧本的首行,以便经由过程键进剧本称号来挪用它。
3.将一切的awk命令拔出一个独自文件,然后挪用。
选项申明:-F域标记缺省为空格
-f指明awk剧本
2.形式和举措
1.任何awk语句都由形式和举措构成。在一个awk剧本中大概有很多语句。
形式部分决意举措语句什么时候触发及触发事务。形式缺省为实行形态。
处置即对数据举行的操纵。
2.形式能够是任何前提语句或复合语句或正则表达式。
3.形式包含两个特别字段BEGIN和END。
域和纪录
域标识:{GetProperty(Content)},$2,…,$n。用逗号做域分开。{GetProperty(Content)}暗示一切域。
打印域或一切域:print命令
注:当碰着awk毛病时,可响应查找:
1.确保全部awk命令用单引号括起来
2.确保命令内一切引号成对进项
3.确保用花括号括起举措语句,用圆括号括起前提语句
4.不要健忘利用花括号
前提操纵符
~婚配正则表达式
!~不婚配正则表达式
内置变量:
NF:每笔记录中域名数
是将变量$PWD的前往值传进awk并显现其目次。
能够使用NF猎取文件名
注:但这里指定域分开符为/
NR:纪录个数
Linuxshell编程之sed用法
1.是一个非交互性文本流编纂器。它编纂文件或尺度输出导出的文本拷贝。
2.经由过程行号或正则表达式指定要改动的文本行
3.sed不与初始文件打交道,而只与它的一个拷贝打交道,假如操纵了局没有重定向到一个文件,那末将输入到屏幕。
挪用体例:
a.命令行体例
b.将sed命令拔出剧本文件中,然后挪用sed
c.将sed命令拔出剧本文件中,使得剧本文件为可实行。
保留sed输入
重定向到一个新文件>
sed中定位文本的体例
x一行号
x,y行号局限
/pattern/查询包括形式的行
/pattern/pattern/查询包括两个形式的行
/pattern/,x在指定行号上查询婚配形式的行
x,/pattern/经由过程行号和形式查询婚配行
x,y!查询不包括行号x,y的行
sed编纂命令
p打印文本
婚配元字符$前,必需利用反斜线
=打印行号利用-e选项
假如既打印行号又打印婚配行,必需利用两个sed命令,并利用-e选项
附加文本
利用标记a,能够指定文本一行或多行附加到指定行。若不指定文本安排地位地位,sed缺省安排在每行前面。
创立sed剧本文件
创立剧本文件,第一举动:
#!/bin/sed-f----注申明sed命令注释行。剧本在这一行查找sed以运转命令,这里定位在/bin
拔出文本:在指定行后面拔出,它也只承受一个地点。
删除文本:d
交换命令用交换形式交换指定形式
利用sed完成的一个主要功效是在另外一个体系中下载的文件中剔除把持字符。
1.利用s/-*//g删除横线-----
2.利用/^$s/d删除空行
3.利用$d删除最初一行
4.利用1d删除第一行
5.利用awk{print{GetProperty(Content)}}打印第一列
</p>
但不会命令而成为高手也是不可能的.这就好比学英语,什么语法都不懂,只捧着单词手册背单词是学不会英语的,但是没有单词词汇量英语水平也提不高的。 |
|