linux 四剑客 find 、grep、sed、awk整理

  • 来源:网络
  • 更新日期:2020-07-13

摘要:系统运维 linux 四剑客 find 、grep、sed、awk整理 find 主要是用于查找Linux 操作系统的某个文件、目录所在路径,查找出满足

系统运维 linux 四剑客 find 、grep、sed、awk整理


find
          主要是用于查找Linux 操作系统的某个文件、目录所在路径,查找出满足条件的文件或者目录的路径
          find / -name *.rpm -type d   --  ###/:表示是在根目录下进行查找  ###-type:查找的类型,d是目录,f是普通文件
          find / -name con*.log -exec cp {} /tmp/ \\; ####基于 find 查找 Linux 系统以.log 结尾,同时名称以 con 开头的,同时将其 拷贝到/tmp 目录下
          find   -name filename 查找名为filename的文件
                                 -type  b/d/c/p/l/f 查找块设备/目录/字符设备/管道/符号链接/普通文件
                                         -size   n[c]   查找长度为n块或n字节的文件
                                         -mtime -n +n 按文件更改时间来查找 -n指n天以内
                                         -atime            按文件访问时间
                                         -ctime            按文件创建时间
                                         -nmin            n为分
  例子:
        find /data/ -name *.text
        find /data/ -name [a-z]*  以小写字母开头的文件
        find /data/ ! -type d            查找非文件夹
        find /data/ -type l                查找链接文件
        find /data/ -type d|xargs chmod 755 -R 查找目录类型并将权限设置755
        find /data/ -size +1M
        find /data/ -size 1M
        find /data/ -mtime +30 -name *.log
    综合应用:
        find /data/ -name *.log -type f -size +10m -exec cp{} /tmp/ \\;
        find /data/ -name  -type f -mtime +30 -size +10m -exec mv {} /tmp/ \\;

grep

grep常用参数如下:

  -a        以文本文件方式搜索
  -c        计算找到的复合行的次数
  -n        输出行号
  -v        输出非是自己的字符
  -h        不显示文件名
  -l         只输出包含匹配字符的文件ming

例子如下:

  grep -c root  /etc/passwd 统计root 的总行数
  grep -i  root  /etc/passwd 忽略大小写
  grep -n root /etc/passwd   打印root的行或者行号
  grep -v root /etc/passwd    不打印root的hang
  grep  root[53] /etc/passwd  以root开头的字符,接5或者3的行
  grep  ^[^root] /etc/passwd 输出行首不是root的行
  grep  r\\{2,\\} /etc/passwd   打印r字符连续出现2次以上的行
  grep -n ^$ /etc/passwd   打印空行的所在行号
  grep --color -E \\>([0-9]{1,3}\\.{3})[0-9]{1,3}   匹配ipv4地址

sed

sed 是一个非交互式文本编辑器,一次处理一行内容


awk

新网虚拟主机