日期:2014-05-16  浏览次数:20529 次

leeboy的linux学习六

1、命令执行顺序控制:
 例如:cat leeboy.txt && echo "open the file success","&&"当前面一个命令成功后,运行后边一个命令,否则不运行后边的命令。
    cat leeboy.txt || echo "open the file failed","||"当前面一个命令失败后,运行后边一个命令,否则不运行后边的命令。
    

2、grep详解:grep "lee" * 在所有文件中查找lee字段,建议使用""。防止将字段理解为shell命令,并且还可以查找字符串如:"lee boy"
 其实在linux中要正确匹配tab符:grep '按CTRL+V 键,再按TAB键' file
 
 正则表达式的使用:(正则表达式建议使用'')
 1、grep '^\.' *:查询所有文件中一行首字符是"."的。其中"\"是转译的作用,防止"."误认为“任意一字符”
 2、grep '^[^43]' *:一行首字符不是“4”或“3”的。grep '3....9[^3,7]' *:最后一个字符不是“3”或“7”。
 3、grep '[Ss]ept' *| grep 34:查找带有“sept”或者“Sept”的行,并该行检索其中带有“34”的。
 4、grep '3c..[0-9]\{3\}' *:例如:3cse897,3coi980。[0-9]\{3\}的意思表示3个数字。(\{\}匹配模式结果,出现的次数)
  又如:grep '3*[0-9]\{2,4\}' *:表示以3开头,2到4个数字结尾的字段。
 5、grep -E '48|34' *:查找含有48或者34的行。其中“-E”使得grep可以使用扩展模式匹配
 6、grep -n '^$' *:查询空行,并显示行号。“^$”在正则表达式中一行的首匹配和一行的尾匹配。
 7、grep '3[^a-z]\{5\}' *:含有3但后边跟着的连续至少5个都不是小写字母。
 8、ls -l | grep '^d':查询目录文件。