zoukankan      html  css  js  c++  java
  • Linux常用命令

    du -sh * 显示某些文件的大小
    df -h    磁盘空间是否还有剩余?-a 全部文件系统列表  -h 方便阅读方式显示 1K=1000,而不是1K=1024
     
    拷贝源资源至目标目录下
    scp -r root@192.168.62.10:/root/ /home/administrator/Desktop/new/
    scp root@192.168.62.10:/root/1.txt /home/administrator/Desktop/new/
     

    ulimit -n 查看文件句柄数
    ulimit -n 2048 进行修改
    locale 查看系统的默认编码

     
    tar -zxvf file.tar.gz file
    tar -zcvf file.tar.gz
    zip -r filename.zip file1 filesdir     -r 选项递归目录
    unzip filename.zip
     
    gzip -c abc.tar > abc.tar.gz
    gunzip abc.tar.gz
     
    grep的基本形式    grep [option] [pattern] [files]
    默认情况下,’grep’只搜索当前目录。这里有两种解决的办法:明确要求搜索子目录:grep -r或忽略子目录:grep -d skip
    -i :忽略大小写 
    -c :打印匹配的行数 
    -l :只列出匹配的文件名 
    -v :查找不包含匹配项的行 
    -n:打印包含匹配项的行和行标 
    -w:只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’)
     

    find的基本形式 find [path] -name [pattern]
    find . -amin -10 #查找在系统中最后10分钟访问的文件
    find . -atime -2 #查找在系统中最后48小时访问的文件
    find . -empty #查找在系统中为空的文件或者文件夹
    find . -group cat # 查找在系统中属于groupcat 的文件(试了,命令不对。)
    find . -mmin -5 # 查找在系统中最后5 分钟里修改过的文件
    find . -mtime -1 #查找在系统中最后24 小时里修改过的文件
    find . -nouser #查找在系统中属于作废用户的文件(不明白是什么意思)
    find . -amin 10 #查找在系统中最后10分钟访问的文件
    find . -user root #查找在系统中属于root这个用户的文件
    find /tmp -size +10000000c -and -mtime +2 #查找/tmp目录中大于10000000字节并且在48小时内修改的某个文件
    find /tmp -user tom -or -user george #查找/tmp目录中属于tom或者george这两个用户的文件
    find /tmp ! -usr fred #查找/tmp目录中不属于fred的文件

     
     
    awk基本形式     awk '/pattern/{action}' {filenames}   pattern是可选的 
    awk工作流程是这样的:读入有' '换行符分割的一条记录,然后将记录按指定的域分隔符划分域,填充域,$0则表示所有域,$1表示第一个域,$n表示第n个域。默认域分隔符是"空白键" 或 "[tab]键"。
    内置变量(含$0-n)
    ARGC               命令行参数个数
    ARGV               命令行参数排列
    ENVIRON            支持队列中系统环境变量的使用
    FILENAME           awk浏览的文件名
    FNR                浏览文件的记录数
    FS                 设置输入域分隔符,等价于命令行 -F选项
    NF                 浏览记录的域的个数
    NR                 已读的记录数
    OFS                输出域分隔符
    ORS                输出记录分隔符
    RS                 控制记录分隔符
    例子:
    awk -F ':' '/^root/{print $1}' /etc/passwd   
    awk -F ':' '{print $1" "$7}' /etc/passwd   
    awk -F ':'  '{print "filename:" FILENAME ",linenumber:" NR ",columns:" NF ",linecontent:"$0}' /etc/passwd
    awk -F ':'  '{printf("filename:%10s,linenumber:%s,columns:%s,linecontent:%s ",FILENAME,NR,NF,$0)}' /etc/passwd
    awk 'BEGIN {count=0;print "[start]user count is ", count} {count=count+1;print $0;} END{print "[end]user count is ", count}' /etc/passwd

     
    在服务器上排除问题的命令
    w,last    有谁在线,有哪些用户访问过
    history    服务器上执行过的命令(export HISTTIMEFORMAT='%F %T ')(添加EXTENDED_HISTORY=ON至/etc/environment)
    pstree -a,ps aux    查看现有进程的情况
    netstat -ntlp,netstat -nulp,netstat -nxlp    找到所有正在运行的服务,各个监听端口。在netstat显示的服务列表中的PID 和 ps aux 进程列表中的是一样的。
    free -m,uptime,top,htop    CPU 和内存的情况
    lspci,dmidecode,ethtool    找到RAID 卡 (是否带BBU备用电池)、 CPU、空余的内存插槽。网卡是否设置? 是否正运行在半双工状态? 速度是10MBps? 有没有 TX/RX 报错
    iostat -kx 2    检查磁盘使用量 
    vmstat 2 10    是否开启了swap交换模式 
    mpstat 2 10    CPU被谁占用:系统进程? 用户进程? 虚拟机?
    dstat --top-io --top-bio    谁在进,行 IO是不是MySQL吃掉了所有的系统资源? 还是你的PHP进程?
    mount    挂载了多少文件系统
    cat /etc/fstab    有没有某个服务专用的文件系统? (比如MySQL?)
    vgs    文件系统的挂载选项是什么: noatime? default? 
    pvs    有没有文件系统被重新挂载为只读模式了?
    lsof +D / /* beware not to kill your box */    如果磁盘空间有问题,你是否还有空间来扩展一个分区?
    dmesg,less /var/log/messages,less /var/log/secure,less /var/log/auth    系统日志和内核消息
    ls /etc/cron* + cat,for user in $(cat /etc/passwd | cut -f1 -d:); do crontab -l -u $user; done    是否有某个定时任务运行过于频繁,是否有些用户提交了隐藏的定时任务
     

    top TOP 命令拿到最耗 CPU 的那个进程
    ps p 10495 -L -o pcpu,pid,tid,time,tname,cmd > ~/10495ps.txt 找到这个进程中占用 CPU 较高的那些线程


     
     
     
  • 相关阅读:
    GraphX学习笔记——Programming Guide
    GraphX学习笔记——可视化
    Gephi学习笔记
    Ubuntu16.04安装apache-airflow
    Centos7.0下MySQL的安装
    同时安装anaconda2和anaconda3
    Hive学习笔记——安装和内部表CRUD
    Python爬虫学习——布隆过滤器
    Ubuntu下安装和使用zookeeper和kafka
    Ubuntu16.04安装xgboost
  • 原文地址:https://www.cnblogs.com/wade-luffy/p/6103940.html
Copyright © 2011-2022 走看看