Chinaunix首页 | 论坛 | 博客
  • 博客访问: 57801
  • 博文数量: 32
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 255
  • 用 户 组: 普通用户
  • 注册时间: 2016-12-02 09:11
文章分类

全部博文(32)

文章存档

2017年(21)

2016年(11)

我的朋友

分类: C/C++

2017-01-05 16:00:02

1.正则表达式:
    
.点代表一个字符。^\<表示开头,$\>表示结尾。[条件],满足条件的任意一个字符。
    
grep '^xxx' yyy --color 找到yyy文件中以xxx开头的行。
    
grep 'xxx$' yyy --color 找到yyy文件中以xxx结尾的行。
    
grep 'xz\{m\}y' passwd --color查找passwd文件中在x和y之间含有m个z的行。
    
grep 'xz\{m,n\}y' passwd --color。查找passwd文件中在x和y之间含有至少m个,之多n个z的行。 
2.sed 's/条件/操作' xxx 对xxx文件满足条件的进行指定操作(条件支持正则表达式)。
    sed ‘m,nd’ yyy 在yyy文件中把m到 n行删除(d 表示删除),只是将结果显示在屏幕上了,并没有改变源文件。
    sed -i 'm,nd' yyy 把yyy文件中第m行到n行删除(改变的是源文件,结果并不显示在屏幕上)。
    
sed ‘$d’ yyy 在yyy文件中把最后一行删除(d 表示删除),只是将结果显示在屏幕上了,并没有改变源文件。
    sed 's/xxx/yyy/g' zzz 将zzz文件中所有xxx都换成yyy(s 代表替换 ,g 所有行)
    
sed -e 's/xxx/yyy/g' -e  's/mmm/nnn/g'  zzz 将zzz文件中所有xxx都换成yyy,所有mmm都换成nnn(如果要进行多个操作则在每个操作之前加上一个 -e)
    
sed  '/xxx/iyyy' zzz 在含有xxx的上一行添加一行yyy(i 代表上一行,a 表示下一行)。
    
sed '/xxx/cyyyy' zzz 将zzz文件中含有xxx的行换成yyy(c 当前行)。
    sed -f yyy xxx 把yyy文件中的所有操作都对xxx文件使用(yyy 为自己写的条件文件 -f 调用文件中的条件)yyy文件的写法:
s/root/ROOt/g。
s/bin/BIN/g
/adm/cxxxxxxxxxxxxx 
只是一个例子演示条件文件的写法。
3.awk -F: '条件{操作}' xxx 对xxx文件满足条件的进行操作(-F 使用分隔符,不写则默认以空格或tab键作为分隔符,不写条件的话默认对全文操作)。
    awk -F: '{print $1}' xxx 查看xxx文件全文以分号:作为分隔符的第一个字段($0 表示整行 ,$1 表示每行的第一个字段)。
    ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | awk -F: '{print $2}' ,获得ip地址。
    
awk -F: '{print NR, $1}' xxx 查看xxx文件全文以分号:作为分隔符的第一个字段并显示行号(NR 显示行号)。
    
awk -F: '{print NR, $1 , NF}' xxx 查看xxx文件全文以分号:作为分隔符的第一个字段,显示行号和字段数(NR 显示行号,NF 显示字段数)。
    
awk -F: '{print NR, $1}' xxx 查看xxx文件全文以分号:作为分隔符的第一个字段(NR 显示行号)。
    
awk -F:  '$3<=3{print $1}' xxx 对xxx先找到满足条件的行,在对这行进行相应操作。
    date | awk 'print "YEAR:"$1 "\n" "MONTH:" $2' 按指定格式输出/排版(\n 表示回车)。
    awk  -F: 'BEGIN{OFS="\t\t";ORS="\n"}{print $1, $2}' xxx (OFS 定义字段之间的分隔符,ORS 定义行与行之间的分隔符)。
4.declare -i aa 定义整形变量aa。
     let bb=1+8 等价于bb=$((1+8)),进行数值运算 
    echo $? 查看最后一次命令的返回值。
     数值的比较:等于 -eq ,大于 -gt ,大于等于 -ge ,小于 -lt ,小于等于 -le 。而字符的比较分别对应 ==> , >= ,< ,<= 。 
    test $aa -eq $bb
 比较aa 与 bb的大小,相等返回0,不等返回非0 (也可使用[ $aa -eq $bb ] 进行比较,中括号两侧一定要有空格),通过echo $? 查看返回值。
    [ -f xxx ] 判断xxx文件是否存在,存在返回值为0(-r 判断xxx文件是否具有读权限,-w 判断文件是否有写权限 ,-x 判断文件是否具有可执行权限,-z 判断字符是否存在)。
5.if 判断语then语句; 
阅读(627) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~