if判断和grep命令-w及搜索前后行

 if [ -n "$row_numbe_detail" ]; 
if的-n判断是判断字符串的长度是否为0的;
字符串判断
[ -n STRING ] 如果STRING的长度非零则返回为真,即非空是真
[ STRING1 ]  如果字符串不为空则返回为真,与-n类似
[ STRING1 < STRING2 ] 如果 “STRING1”字典排序在“STRING2”前面则返回为真。
[ STRING1 > STRING2 ] 如果 “STRING1”字典排序在“STRING2”后面则返回为真。


grep命令  -w 

  -w或--word-regexp   只显示全字符合的列。
 -x或--line-regexp   只显示全列符合的列。
grep  -w  word   filename   是指定某个word搜索;

(2)-A -B -C
  很多时候,我们并关心匹配行而是关心匹配行的上下文。这时候-A -B -C就有用了
-A n 后n行,A记忆为(After)
-B n 前n行,B记忆为(Before)
-C n 前n行,后n行,C记忆为(Center)  
查询时,ABC的大小写不一样,查询结果就不一样;
查找搜索字段的行及上一行和下一行:
[root@hps220 dongfang]# grep -b1  home  2222   
0-i  am  chinese
15:here is my  home
32-bbb

查找搜索字段的行及上一行:
[root@hps220 dongfang]# grep -B1  home  2222
i  am  chinese
here is my  home

(8)查找IP地址
这里用到了-o和-P命令
我们通过man grep查看
-o, --only-matching:
              Show only the part of a matching line that matches PATTERN.
-P, --perl-regexp:
              Interpret PATTERN as a Perl regular expression.
也就是说-o,只显示匹配行中匹配正则表达式的那部分
-P,作为Perl正则匹配






 $#:表示返回所有脚本参数的个数。 




  sudo ansible ips -s -m shell -a "chown -R $currenthostname:$currentgroup /data/aiips"
ansible的-s命令是什么意思; -s, --sudo
 -R SU_USER, --se-user=SUDO_USER




groups命令在标准输入输出上输出指定用户所在组的组成员;

猜你喜欢

转载自blog.csdn.net/xiaofang2015/article/details/80277789