• Linux Shell命令总结


    关机/重启

    关机(必须用root用户)
    shutdown -h now  ## 立刻关机
    shutdown -h +10  ##  10分钟以后关机
    shutdown -h 12:00:00  ##12点整的时候关机
    halt   #  等于立刻关机
    
    重启
    shutdown -r now
    reboot   # 等于立刻重启

    vim文本编辑器

    最基本用法
    vi  somefile.4
    1 首先会进入“一般模式”,此模式只接受各种快捷键,不能编辑文件内容
    2 按i键,就会从一般模式进入编辑模式,此模式下,敲入的都是文件内容
    3 编辑完成之后,按Esc键退出编辑模式,回到一般模式;
    4 再按:,进入“底行命令模式”,输入wq命令,回车即可
    
    常用快捷键
    一些有用的快捷键(在一般模式下使用):
    a   在光标后一位开始插入
    A   在该行的最后插入
    I   在该行的最前面插入
    gg   直接跳到文件的首行
    G    直接跳到文件的末行
    dd    删除一行
    3dd   删除3行
    yy    复制一行
    3yy   复制3行
    p     粘贴
    u     undo
    v        进入字符选择模式,选择完成后,按y复制,按p粘贴
    ctrl+v   进入块选择模式,选择完成后,按y复制,按p粘贴
    shift+v  进入行选择模式,选择完成后,按y复制,按p粘贴
    
    查找并替换
    1 显示行号
    :set nu
    2 隐藏行号
    :set nonu
    3 查找关键字
    :/you       ## 效果:查找文件中出现的you,并定位到第一个找到的地方,按n可以定位到下一个匹配位置(按N定位到上一个)
    4 替换操作
    :s/sad/bbb    查找光标所在行的第一个sad,替换为bbb
    :%s/sad/bbb      查找文件中所有sad,替换为bbb

    拷贝/删除/移动/更换文件名字

    cp  somefile.1   /home/hadoop/
    rm /home/hadoop/somefile.1
    rm -f /home/hadoop/somefile.1
    mv /home/hadoop/somefile.1 ../
    mv a.txt b.txt //把a.txt更名为b.txt

    打包压缩

    1、gzip压缩
    gzip a.txt
    
    2、解压
    gunzip a.txt.gz
    gzip -d a.txt.gz
    
    3、bzip2压缩
    bzip2 a
    
    4、解压
    bunzip2 a.bz2
    bzip2 -d a.bz2
    
    5、打包:将指定文件或文件夹
    tar -cvf bak.tar  ./aaa
    将/etc/password追加文件到bak.tar中
    tar -rvf bak.tar /etc/password
    
    6、解压
    tar -xvf bak.tar
    
    7、打包并压缩
    tar -zcvf a.tar.gz  aaa/
    
    8、解包并解压缩(重要的事情说三遍!!!)
    tar  -zxvf  a.tar.gz
    解压到/usr/tar  -zxvf  a.tar.gz  -C  /usr
    
    9、查看压缩包内容
    tar -ztvf a.tar.gz
    zip/unzip
    
    10、打包并压缩成bz2
    tar -jcvf a.tar.bz2
    
    11、解压bz2
    tar -jxvf a.tar.bz2

    常用查找命令

    1、查找可执行的命令所在的路径:
    which ls
    
    2、查找可执行的命令和帮助的位置:
    whereis ls
    
    3、从某个文件夹开始查找文件
    find / -name "hadooop*"
    find / -name "hadooop*" -ls
    
    4、查找并删除
    find / -name "hadooop*" -ok rm {} ;
    find / -name "hadooop*" -exec rm {} ;
    
    5、查找用户为hadoop的文件
    find  /usr  -user  hadoop  -ls
    
    6、查找用户为hadoop的文件夹
    find /home -user hadoop -type d -ls
    
    7、查找权限为777的文件
    find / -perm -777 -type d -ls
    
    8、在指定目录不分大小写查找某个文件
    find ./sound/ -iname ft56Q.c 
    
    9、显示命令历史
    history

    grep命令

    最常用的-全字匹配
    grep -wrn  weiqifa ./sound/
    
    查找 某个字符串但是不在指定文件夹查找
    grep -E "http"  ./ -R --exclude-dir=./sound/ 
    grep -E "http"  . -R --exclude-dir={.git,res,bin}
    排除扩展名为 java 和 js 的文件
    grep -E "http"  . -R --exclude=*.{java,js}
    
    1 基本使用
    查询包含hadoop的行
    grep hadoop /etc/password
    grep aaa  ./*.txt 
    
    2 cut截取以:分割保留第七段
    root@ubuntu:~/kernel_rk3399_yan4_dev/kernel# grep dsl /etc/passwd | cut -d: -f7
    /bin/bash
    root@ubuntu:~/kernel_rk3399_yan4_dev/kernel# grep dsl /etc/passwd 
    dsl:x:1000:1000:dsl,,,:/home/dsl:/bin/bash
    root@ubuntu:~/kernel_rk3399_yan4_dev/kernel# 
    
    
    3 查询不包含hadoop的行
    grep -v hadoop /etc/passwd
    
    4 正则表达包含hadoop
    grep 'hadoop' /etc/passwd
    
    5 正则表达(点代表任意一个字符)
    grep 'h.*p' /etc/passwd
    
    6 正则表达以hadoop开头
    grep '^hadoop' /etc/passwd
    
    7 正则表达以hadoop结尾
    grep 'hadoop$' /etc/passwd
    
    规则:
    .  : 任意一个字符
    a* : 任意多个a(零个或多个a)
    a? : 零个或一个a
    a+ : 一个或多个a
    .* : 任意多个任意字符
    . : 转义.
    o{2} : o重复两次
    
    查找不是以#开头的行
    grep -v '^#' a.txt | grep -v '^$' 
    
    以h或r开头的
    grep '^[hr]' /etc/passwd
    
    不是以h和r开头的
    grep '^[^hr]' /etc/passwd
    
    不是以h到r开头的
    grep '^[^h-r]' /etc/passwd

    linux文件权限的描述格式解读

    drwxr-xr-x      (也可以用二进制表示  111 101 101  -->  755)
    
    d:标识节点类型(d:文件夹   -:文件  l:链接)
    r:可读   w:可写    x:可执行 
    第一组rwx:  ## 表示这个文件的拥有者对它的权限:可读可写可执行
    第二组r-x:  ## 表示这个文件的所属组用户对它的权限:可读,不可写,可执行
    第三组r-x:  ## 表示这个文件的其他用户(相对于上面两类用户)对它的权限:可读,不可写,可执行

    修改文件权限

    chmod g-rw haha.dat         ## 表示将haha.dat对所属组的rw权限取消
    chmod o-rw haha.dat         ## 表示将haha.dat对其他人的rw权限取消
    chmod u+x haha.dat         ## 表示将haha.dat对所属用户的权限增加x
    chmod a-x haha.dat               ## 表示将haha.dat对所用户取消x权限
    
    
    也可以用数字的方式来修改权限
    chmod 664 haha.dat   
    就会修改成   rw-rw-r--
    如果要将一个文件夹的所有内容权限统一修改,则可以-R参数
    chmod -R 770 aaa/

    修改文件所有权

    <只有root权限能执行>
    chown angela  aaa        ## 改变所属用户
    chown :angela  aaa        ## 改变所属组
    chown angela:angela aaa/    ## 同时修改所属用户和所属组
  • 相关阅读:
    2019年北航OO第三次博客总结
    2019年北航OO第二次博客总结
    2019年北航OO第一次博客总结
    BUAA_OO第四单元总结性博客作业——UML(Floyd实现规则检查?)
    BUAA_OO第三单元总结性博客作业——JML
    BUAA_OO第二单元总结性博客作业——多线程电梯架构
    BUAA_OO第一单元总结性博客作业——表达式求导
    免费虚拟主机 免费云服务器
    .net core API 使用swagger
    Socket学习
  • 原文地址:https://www.cnblogs.com/it-davidchen/p/12027744.html
Copyright © 2020-2023  润新知