Linux 常用命令 笔记

作者: 木子李_af14 | 来源:发表于2017-09-11 16:49 被阅读39次

    文件查阅 cat tail head more less grep

    cat:打印文件全部内容
    tail:查看文件末尾几行
    head:查看文件头几行
    more:向下翻页。从头开始查看文件内容
    less:可向上向下翻页,从头开始查看文件内容
    grep:搜索内容,正则匹配参考此处

    #查看所有内容
    cat config.xml
    #打印行号
    cat -n config.xml
    
    #查看最后100行
    tail -n 100 error.log
    #持续输出文件,ctrl+c结束
    tail -f error.log
    
    #翻页查看
    #操作: space向下翻一页、enter向下翻一行、b往回翻一页、:f 立即显示文件名和行号、q 退出
    more error.log
    #操作:space、PageDown、PageUp、q 离开
    #/key 向下查找关键字、?key 向上查找关键字、n 下一个关键字
    less error.log
    
    #搜索关键字
    grep key error.log
    #额外显示前后20行 A:after B:before
    grep key error.log -A20 -B20
    #根据正则搜索
    #搜索以key或keY开头的记录
    grep ke[Yy] error.log 
    

    查找文件名、文件夹、命令

    which、whereis、locate、find

    e.g. 通常find命令不常用来找文件在哪,因为速度慢。一般优先使用whereislocate来检查,因为这二者是利用数据库来查找数据,速度很快,且没有实际查询硬盘,比较省时。

    #查找find命令和who命令在哪
    #which 用法:
    #which [-a] command
    which find
    which who
    
    #whereis 用法:
    #whereis [-bmsu] 文件或目录名
    whereis error
    
    #locate 用法:
    #locate [-ir] keyword
    locate password
    
    #find 用法
    #find [PATH] [option] [action]
    #查找/home目录下 属于用户xxb的文件
    find /home -user xxb
    #查找/home目录下 不属于任何人的文件
    find /home -nouser
    #查找/home目录下名为error的文件 或 文件夹
    #!!!!这种形式不是模糊查询
    find /home -name error
    #根据名字 模糊查询
    find /home -name '*error*'
    #查找/home目录下 10个字节以上的文件
    find /home -size +10c
    #查找/home目录下 10kb以上的文件
    find /home -size +10k
    

    e.g.
    find还有一个特殊功能,就是执行额外的功能,范例如下:

    find /home -size +10k -exec ls -l {} \;
    

    解读:

    • {}代表由find查找到的内容,可以理解成占位符。
    • -exec\;是关键字,代表find额外命令的开始(-exec)到结束(\;),在这中间的就是find命令内的额外命令。
    • 因为;在bash环境中有特殊含义,因此利用反斜杠来转义。

    文件系统操作 cp mv rm df du

    #复制
    cp temp.txt ../test/temp.txt
    #递归复制文件夹
    cp -r log ../test/
    
    #移动
    mv temp.txt ../test/temp.txt
    
    #删除
    rm  temp.txt
    #强制删除
    rm -f temp.txt
    #递归删除
    rm -i temp.txt
    
    #以人们较易阅读的GB、MB、KB等格式自行显示
    df -h 
    

    vim常用操作

    按键 动作
    G 移动到文件最后一行
    gg 移动到第一行
    N[Enter] n为数字,光标向下移动n行
    -- --
    -- --
    /word 向下搜索word,按n继续向下查找,按N反之
    ?word 向上搜索word,按n向上查找,按N反之
    -- --
    -- --
    x与X 小写x == delete(向后删除),大写X == backspace(向后删除)
    dd 删除一行
    ndd 向下删除n行
    yy 复制一行
    nyy 复制向下的n行
    p与P 小写p == 向下粘贴 大写P == 向上粘贴, 不会覆盖当前行
    -- --
    -- --
    i与I 小写i == 在光标处插入,大写I == 在所在行第一个非空格处开始插入
    a与A 小写a == 在光标所在的下一个字符处开始插入,大写A == 在光标所在行的最后一个字符处插入
    o与O 小写o == 在光标所在行的下一行处插入一行,大写O == 在上一行插入一行
    -- --
    -- --
    :w 保存
    :w! 强制保存
    :q 退出
    :q! 强制退出
    :wq 保存后退出
    ZZ 大写Z == 对已修改文件保存并退出,未修改文件直接退出
    :set nu 显示行号
    :set nonu 取消显示行号
    -- --
    -- --
    :n1,n2s/word1/word2/g n1和n2位数字。表示在n1和n2行之间用word2替换word1
    :1,$s/word1/word2/g 从第一行到最后一行之间用word2替换word1
    :1,$s/word1/word2/gc 从第一行到最后一行之间用word2替换word1,加了c,表示最后替换前需要用户确认

    环境变量、自定义变量

    set:查看所有变量
    env:查看环境变量
    export:可以将自定义变量设置为环境变量

    相关文章

      网友评论

        本文标题:Linux 常用命令 笔记

        本文链接:https://www.haomeiwen.com/subject/hhggjxtx.html