• Linux基础-进程和服务(2)


    Linux的正则表达式和通配符(这是2个不同的概念)

    通配符:它是由shell解析,并且一般用于匹配文件名。如:ls

    正则表达式:是一个字符匹配标准,可以匹配文本中的内容

    一些命令工具按此标准实现字符匹配,常用语支持正则表达式的工具,如grep,sed等。一般用于匹配文件中的内容

    常用的通配符:

    *:匹配任意多个字符

    ?:匹配任意一个字符

    [...]:匹配中括号内出现的任意一个字符

    [!...]:不匹配中括号内出现的任意一个字符

     (搜索以p开头的所有文件)

    (搜索pass后有2个字符的文件目录) 

     (搜索pass[acndw]d与[ ]内任意一个字符匹配的文件和目录,只搜到了passwd)

    (搜索不到不与[ ]内匹配的pass[]d的文件或目录,加!表示不与[ ]内的任意字符匹配)

     (若w不在[ ]内就可搜索到)

    正则表达式:

     

     

     编辑abc,并在其中写入一些字符

     (使用cat查看adc并过滤有a.d的字符;  “.”代表任意一个“*”代表任意多个)

     

     (使用cat查看abc从头到尾)

     (匹配空白行)

     

     (搜索有大写字母的,和有4个大写字母的字符;其他字符操作也类似)

     查找和替换

    grep:只能用于查找文件中的内容

    sed:可以查找,然后替换或者插入想要的内容

    a:新增,a的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)

    d:删除,因为是删除,所以d后面通常不接任何东西

    i:插入,i的后面可以接字串,而这些字串会在新的一行出现(目前的上一行)

    p:列印,即将某个选择的资料印出,通常p会与参数sed

    s:取代,可以直接进行取代的工作

     

     删除adc的2到5行

     在abc的第二行后面增加123456(使用a新增到目前的下一行,如图)

     在abc的最后一行的前一行插入123456(使用$锚定到最后一行,用i在目前的前一行插入,如图)

     把abc中的ad替换成da(使用s ,并紧接/,/的右边替换左边,如图【运用正则表达式,在上图】)

     sed操作并不会对原文件进行修改只是在显示出来中做出修改

    如果要对原文件进行修改,使用-i选项(慎用)

    如果想要更了解sed和grep可以使用 man sed ; man grep

    查找语句find

    用法: find 【路径】【命令参数】【表达式】

    参数:

    -name“文件名”:查找指定名称文件

    -user 用户名:查找指定用户拥有的文件

    -group 组名:查找指定组拥有的文件

    -mtime:查找在N天前被修改过的文件

    -atime:查找在N天前被访问过的文件

    -type d/f/b/l/p:查找指定类型的文件

    -empty:查找为空的文件

    -size:按容量大小查找

    -perm mode:查找指定属性的文件

    -exec command{};:查看指定的文件并执行指定的命令

    -newer文件名:查找比指定文件新的文件

     (查找/var下3天内被修改过的文件)

     (查找/var下3天前被修改过的文件)

     (查找/var下大于5M的文件(把+换成 - 就表示小于))

     (查找/var下大于2M文件的详细信息)

     

     (把/var中大于5M的文件拷贝至/tmp/shuaifile中,-a表示把文件属性保留,-r表示把文件和目录一起cp)

    其他参数用法也类似,若想知道更多find用法:man find

  • 相关阅读:
    vue.js实战——.native修饰符
    vue.js实战——props数据验证(自定义构造器检测)
    vue.js实战——props单向数据流
    vue组件之嵌套
    vue非父子组件之间的通信——发布订阅模式,总线机制
    脚本加载优化方法
    文字溢出时,实现在末尾显示三个点省略效果
    1-stm32 gpio库函数
    2-C语言 排序算法
    电子工程师扫盲
  • 原文地址:https://www.cnblogs.com/wangzhehui/p/11647922.html
Copyright © 2020-2023  润新知