• 运维常用的linux命令操作


    1·find命令

    查找指定名字的文件或目录:

    find ./ -name xxx.sh

    查找指定大小范围的文件或目录: 

    find ./  -size +50k -a -size -2M  (-a 是而且,-o是或者,-not 是相反)
    

      

    查找指定文件类型:

     find ./ -type f (普通文件f  文件夹文件d  符号文件l  字符设备c  块设备b等)
    

      

    查找指定修改时间的文件或目录:

    find ./ -mtime +1 -a mtime -3 (修改时大于1天,小于3天)
    
    find ./ -mmin +1 -a mmin -3 (修改时大于1分钟,小于3分钟)
    
    find ./ -newermt '2020-12-02' (修改时间小于2020-12-02的文件或目录)
    

      

    查找指定权限的文件或目录

    find ./ -perm 755【查找权限为755的】
    
    find ./  ! -perm 755【查找权限不是755的】
    

      

    查找到文件后做出对应操作

     find ./ -name xx.sh -delete  # -delete 【删除查找到的文件】

     -exec 命令 {} ;  【执行命令(当前目录下执行)】

    find ./ -name README.txt -exec ls {} ;
    
    find / -name 10086.txt -exec cat {} ;
    

      

     -ok 命令 {} ; 【 执行命令,执行前会询问(当前目录下执行)】

    find ./ -name README.txt -ok ls {} ;
    
    find / -name 10086.txt -ok cat {} ;
    

      

     -execdir 命令 {} ;  【执行命令(在查找到的文件或目录所在目录下执行)】

    find / -name 10086.txt -execdir pwd  ;
    

      

    -ok 命令 {} ;  【执行命令,执行前会询问(在查找到的文件或目录所在目录下执行)】

    find / -name 10086.txt -okdir pwd  ;
    

      

    2·xargs命令

    xargs命令是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。

    -I参数和find搭配

    find / -name 10086.txt  | xargs -I {} cat {}
    

      

    -I参数和awk搭配

    ll |awk '{print $9}' |xargs -I {} mv {} {}_bak
    

      

     -d和-n参数

    xargs默认的命令就是echo,-d可以指定分割符,-n可以指定一次输出的数量

     

    3·awk和sort命令

    举例,日志文件如下格式:

    如 a.acc文件:

    100.120.239.186 - - [15/Mar/2020:11:12:40 +0800] "HEAD / HTTP/1.0" 200 273 "-" "-"

    统计各个IP的访问量,并排序

    awk '{a[$1]++}END{for(i in a) print i,a[i] }' a.acc | sort -n -r -k 
    

      

     统计200状态的各个IP的访问量,并排序

    awk '$9==200{a[$1]++}END{for(i in a) print i,a[i] }' a.acc | sort -n -r -k 2
    

      

     统计5-10行区间内 各个IP的访问量,并排序

    awk '{if(NR>=5&&NR<=10)a[$1]++}END{for(i in a)print i,a[i]}' a.acc | sort -n -r -k 2
    

      

    4·免密登录配置、

    如:在192.168.30.133上配置免密登录到192.168.30.135,那么就需要在133机器上执行两个命令

     生成本机密钥:
    
    ssh-keygen -t rsa -f /root/.ssh/id_rsa -N "" -q
    
    生成ssh公钥认证的公钥并填充到目标服务器(需要输入密码):
    
    ssh-copy-id -i /root/.ssh/id_rsa.pub -o StrictHostKeyChecking=no 192.168.30.135

    5·主机资源监视

    5.1·cpu

    cpu核数 

    cat /proc/cpuinfo |grep processor |wc -l 【逻辑cpu】
    

      

    cpu使用情况

    top   或者  dstat --top-cpu

    5.2·内存

    free -mh

     

    5.3·查看端口占用进程

    lsof -i:端口

    5.4·磁盘

    df -h  目录空间使用情况

    du 显示文件或目录所占用的磁盘空间

    5.5·IO

    iostat 查看io情况

    iotop 查看占用IO较高的进程

    iotop -o 只看产生io的进程(会更清爽一点)

    • IO:它显示每个进程的 I/O 利用率,包含磁盘和交换。
    • SWAPIN: 它只显示每个进程的交换使用率。

  • 相关阅读:
    ubuntu用mentohust连接ruijie
    vim系统剪切板
    JSP 页面中用绝对路径显示图片
    response.setContentType与 request.setCharacterEncoding 区别
    安装mysql数据库要注意的
    eclipse link方式安装插件安装不上
    Windows程序调用dll
    DP 问题
    LeetCode Repeated Substring Pattern
    LeetCode Number of Segments in a String
  • 原文地址:https://www.cnblogs.com/momoyan/p/14165754.html
Copyright © 2020-2023  润新知