• linux 常用命令整理


    • 常用命令

    .当前目录

    ..上级目录

    cp a.txt b.txt 复制并命名

    cp -r /home/test /root/test2   复制目录

    mv a.txt /home/b.txt  移动并重命名

    rm -rf a.txt 删除当前目录下的a.txtrf强制删除不提示,rm -rf /整个系统删除慎用

    mkdir -p /home/mtx/study  若不存在创建目录

    touch a.txt  新建文件

    ./jmeter 执行当前目录下的文件

    pwd

    • 文件编辑

    vi ./a.txt  编辑 vim高级编辑

    i进入编辑模式

    Esc 退出编辑模式

    在非编辑模式下

    Ctrl+f: 向上翻页

    Ctrl+b: 向下翻页

    Ctrl+d: 向上翻半页

    Ctrl+u: 向下翻半页

    G:移动光标到文件最后

    :0 回车:移动光标到文件第一行

    :set number :显示行号

    :1,$ s/info 52/err 77/g    从第一行到最后一行,将所有的’info 52’替换为’err 77’

    :s/info 52/err 77/g    将当前行的的’info 52’替换为’err 77’

    ^:移动到行首

    $:移动到行尾

    yy:复制选中内容

    p:粘贴

    dd:删除光标所在行

    /abc:搜索文件中包含abc的行

    :wq :保存退出

    • 文件查看

    cat a.txt 一次查看所有信息

    more a.txt 分屏查看,按空格下一页,按b上一页面

    less a.txt 分屏查看,按空格下一页,按b上一页面
    tail -100 a.txt 查看文件后100

    tail -f a.txt 实时查看文件尾

    head -100 a.txt  查看前100

    • 包管理工具yum(相当于苹果的app store)

    从指定的服务器自动下载prm包且安装,自动处理依赖关系,且一次性安装所有依赖的软件包,无须繁琐地一次次下载、安装

    yum list:列表所有的包(已安装+可安装)

    yum list installed:列表已安装的包

    yum search 包名:查找指定包

    yum install -y 包名:安装指定包(-y 遇到询问自动确认yes

    yum remove 包名:删除指定包

    yum update 包名:更新指定包

    • 文件压缩、解压缩

    zip -r test.zip test 将当前test文件夹压缩为test.zip

    unzip test.zip  解压test.zip到当前目录

    unzip test.war 解压test.war到当前目录

    tar cvf test.tar.gz test 将当前test文件夹压缩为test.tar.gz

    tar xvf test.tar.gz test.tar.gz解压到当前目录

    tar tvf test.tar.gz  不解压直接查看test.tar.gz包含的文件列表

    zcat test.tar.gz 直接查看test.tar.gz压缩包里的内容

    • l权限控制

    chmod +x ./lcx.txt 对当前目录下的lcx.txt文件加执行权限

    chmod +x ./* 对当前目录下的所有文件加执行权限

    chmod -x ./lcx.txt 去掉当前目录下的lcx.txt的执行权限

    chmod 777 ./lcx.txt 对当前目录下的lcx.txt文件设所有人有rwx读写执行权限

    chown root:root ./lcx.txt 将当前目录下的lcx.txt拥有者改为rootroot用户

    chown -R root:root ./* 将当前目录及子目录下文件拥有者改为rootroot用户

    chattr +i  禁止修改和删除文件

    chattr -i   取消限止

    lsattr   查看权限

    man 帮助

    • 文件搜索

    find / -name lcx*.txt 从根目录下全局搜索lcx*.txt文件

    find / -amin -10 在根目录下全局搜索10分钟内访问过的文件(access time

    find / -mmin -10 在根目录下全局搜索10分钟内修改过的文件(modify time

    find / -atime -1 在根目录下全局搜索24小时内访问过的文件(access time 

    find / -mtime -1 在根目录下全局搜索24小时内访问过的文件(modify time 

    find / -ctime -1 在根目录下全局搜索24小时内改变过的文件(change time

    find / -user fred 查找用户fred下的文件

    find / -size +1000c 查找大于1000字节的文件(c:字节,kKB,M:MB,G:GB

    find / -size -1000k 查找小于1000KB的文件(c:字节,kKB,M:MB,G:GB

    • 系统命令

    ip addripconfig:查看ip信息

    systemctl restart/start/stop network   网卡重启/启动/关闭 

    systemctl start/stop/status firewalld.service防火墙启动/关闭/查看启动状态

    ps -ef|grep tomcat   查看进程并过滤tomcat进程

    top -n 10  及时显示进程状态

    du -sh 查磁盘空间

    kill -9 <pid>|grep <pid> 杀掉进程,pid为进程号

    history 查看历史命令

    nohup ./xxx.sh & 在后台执行xxx脚本

    netstat -anp|grep 3306 查看系统中3306端口所属进程

    netstat -nlpt  实时监控网络信息

    netstat -i -c 1 每隔一秒一次

    rz 本地上传文件

    • 设置别名

    文件 .bashrc里 设置完生效source .bashrc

    alias logs='cd /data/logs/slbbiz'

    alias seeser='sh /data/tools/seeser.sh'

    显示所有别名:alias -p

    • Linux高频面试题目

    awk [options] ‘pattern{action}’ file1,file2  #options分隔符,默认为空格;$2列数,从1开始;处理有规律的列

    awk '{print $2,$6}' lcx.log|cut -b 2-37^C  打印文件lcx.log中的空格分隔的第二、六列并只显示2-37个字节内容

    awk -F '#' '{print $1}' lcx.log 打印文件lcx.log中的以“#”分隔的第二、六列并只显示2-37个字节内容 

    sort排序:

    sort-r反向排序(reverse,默认正向;-n按数字排序(number

    uniq统计相临行的重复次数,-c显示出现次数

    1、某文件有多列数据,空格隔开,统计第n列单词,打印出现频率最高的前5个单词

    awk '{print $7}' info.log |sort|uniq -c|sort -rn|head -5

    sed :在线流编辑器(只输出到相应的终端),不改变文件内容 格式sed[option][n1,n2]function;行操作包括增删改查

    N1,n2

    -n:只显示被处理过的行

    -i:直接修改读取的文件内容,而不是输出到终端

    a:新增一行内容,新增到下面一行

    c:替换行,替换n1,n2之间行

    d:删除行,

    i:插入行,i插入到下面一行

    p:打印,通常p会与sed -n一起运行,只打印处理过的行

    s:替换同vi里类似,eg:  1,20s/old/new/g

    打印2-4行内容:sed -n '2,4p' info.log

    删除2-4行内容:sed '2,4d' info.log

    在第一行后新增一行,只显示处理过的行:sed -n '1a lcx add' info.log

    搜索并打印包含lcx的行:sed -n '/01.208/p' info.log

    替换原文本(-i,将所有(glcx替换成liucxsed -i 's/lcx/liucx/g' info.log

    2、统计日志中调用前五的进程数

    awk '{print $7}' info.log|awk -F '.' '{print $6}'|uniq -c|sort -rn|head -5

    3grep过滤前面结果中的数据;对文件及结果过滤处理,可以重复利用

    查看包含指定字符串的行:grep 'Failed to' error.log

    -n显示行号:grep -n 'Failed to' error.log

    -B n显示匹配字符串的行及前n:grep -B 5 'Failed to' error.log

    -A n显示匹配字符串的行及后n行:grep -A 5 'Failed to' error.log

    -C n显示匹配字符串的行及前后各n行:grep -C 5 'Failed to' error.log

    -v不包含某些字符串的行

     

     

     

  • 相关阅读:
    内存管理简介之Buddy算法和slab分配
    进程通信方式介绍
    Linux内核网络栈实现分析(十一)驱动程序层(下)
    Linux内核网络协议栈深入分析(二)sk_buff的操作函数
    Linux内核网络协议栈深入分析(一)与sk_buff有关的几个重要的数据结构
    内核源码学习:伙伴算法
    寒假Day16Dinic模板更新+优化
    寒假Day20:数位dp
    寒假Day21:Catalan Square卡特兰数 JAVA写大数
    寒假Day17UVALive3231Fair Share(最大流+二分)
  • 原文地址:https://www.cnblogs.com/liuchunxiao83/p/12738505.html
Copyright © 2020-2023  润新知