zoukankan      html  css  js  c++  java
  • 大数据之Linux进阶指令

    1.文件内容操作相关命令

      cut 根据条件 从命令结果中 提取 对应内容

        -c   按字符选取内容

      例子:head -2 1.txt | cut -c 5 截取前两行的第五个字符

        -d  '分隔符'     指定分隔符

        -f  n1,n2       分割以后显示第几段内容, 使用(,)拼接

         也可以写成 -f  1,2  或者 -f 1-2

      例子:head -2 1.txt | cut -d ':' -f 1,2 读取前两行内容后按照:切割 显示第一段和第二段内容

      sort 可针对文本文件的内容,以行为单位来排序。 

        文件名    对文件内容按照字符排序

        -u      对文件内容按照字符排序并去重

        -n      按照数值大小排序

        -r     使次序颠倒

        -t       指定字段分隔符

        -k      配合切割字符使用,切割后显示第几列,并根据那一列排序

      例子:sort -t ',' -k2nr score.txt  根据第二段成绩 进行倒序显示 所有内容

      wc显示指定文件 字节数, 单词数, 行数 信息.

        文件名   显示指定文件 字节数, 单词数, 行数 信息.多个文件用空格拼接

        -c     只显示bytes 字节数

        -w       只显示words 单词数

        -l      只显示lines 行数

      uniq用于检查及删除文本文件中重复出现的行,一般与 sort 命令结合使用。

        -c     统计每行内容出现的次数

      例子:cat 5.txt | sort | uniq -c 显示去重后的数据并且在行头显示出现的个数

      tee可以将命令结果 通过管道 输出到 多个文件中

      例子:cat 5.txt | sort | uniq -c | tee a.txt b.txt c.txt   将去重统计的结果 放到 a.txt、b.txt、c.txx 文件中

      tr用于 替换 或 删除 文件中的字符。

      例子:echo "itheima" | tr 'i'  'I'     将 小写i 替换成 大写 I 

        -d 字符  删除指定的内容

      例子:echo 'abc1d4e5f' | tr -d '[0-9]'  删除abc1d4e5f中的数字

      split将大文件 切分成 若干小文件

        -b  [bytes]    将大文件切分成若干bytes的小文件   (如10K)支持K M G 的简写

         -l  [lines]    将大文件切分成若干行的小文件 

      awk实现 模糊查询, 按需提取字段, 还可以进行 判断 和 简单的运算等.

        -F      分割符后面跟要根据什么字符分割

        $ + 数字   获取第几段内容

        $0       获取 当前行 内容

        NF      表示当前行共有多少个字段

        $NF      代表 最后一个字段

        $(NF-1)      代表 倒数第二个字段

        NR        代表 处理的是第几行

        OFS="字符"  向外输出时的 段分割字符串

        '{print $1, $2, $3}'    打印第一段,第二段,第三段,配合分割使用

        toupper()       字符 转成 大写

        tolower()       字符 转成小写

        length()         返回 字符长度

        'BEGIN{初始化操作}{每行都执行} END{结束时操作}'

       例子:awk -F ',' '{if($4>60) print $1, $4, "及格"; else print $1, $4, "不及格"}' score.txt     如果第四段成绩大于60;打印第一段姓名,第四段成绩,及格 否则 打印  打印第一段姓名,第四段成绩,不及格

       例子:awk -F ',' 'BEGIN{}{total=total+$4}END{print total, NR, (total/NR)}' score.txt       求平均分,Begin{}{求所有人的成绩的和}END{打印总成绩,总人数,平均分}

       sed通过 sed 可以实现 过滤 和 替换 的功能

        p       打印

        $       代表 最后一行

        -n        仅显示处理后的结果

        -e        根据表达式 进行处理
       例子sed -n -e '1,5p' 1.txt   列出 1.txt的 1~5行 的数据
       例子:sed -n -e '/root/p' 1.txt  查找01.txt中包含root行
    2:文件解压压缩相关命令
      # 压缩文件 
      tar -zcvf 打包压缩文件名.tar.gz 被压缩的文件/目录 

    # 解压缩文件(记忆敲门: 直销危房)
    tar -zxvf 打包文件.tar.gz

    # 解压缩到指定路径
    tar -zxvf 打包文件.tar.gz -C 目录路径

    -z 解压/压缩.gz文件  -j 解压/压缩 bzip2文件

    3.VIM编辑器相关命令  

    如果 vi 异常退出, 在磁盘上可能会保存有 交换文件.swp文件,再次打开文件时会有提示,如果放弃之前的编辑按D,恢复按R,不管按E

    vim 文件名 创建/打开文件 没有即创建 有即打开 w   保存
    vim 文件名 +行数  打开文件并将光标留在指定行 q 退出,如果没有保存,不允许退出
    h 光标向左 q! 强行退出,不保存退出
    光标向下 wq  write & quit 保存且退出
    光标向上 x 保存并退出
    光标向右 ZZ  保存并退出
    w 向后移动一个单词 0 行首
    b 向前移动一个单词 ^ 行首, 第一个不是空白字符的位置
    gg 
    文件顶部
    $ 行尾
    数字G 
    移动到 数字 对应行数 
    Ctrl + b 
    向上翻页 
    : 数字
    移动到数字对应的 行数
    Ctrl + f 
    向下翻页 
    上一段
    H
    屏幕顶部
    下一段
    屏幕中间 
    %
    括号匹配及切换 
    屏幕底部
    mx
    添加编辑x, x是a~z 或者 A~Z的任意一个字母
    'x 
    直接定位到标记x所在的位置
    撤销上次的命令(ctrl + z) 
    Ctrl + r
    恢复撤销的命令
    x
    删除光标所在的字符,或者选中的文字 d(移动命令) 删除移动命令对应的内容/剪切
    dd 
    删除至行尾/剪切
    d0 
    从光标位置删除到一行的起始位置
    dw 
    从光标位置删除到单词末尾
    d} 
    从光标位置删除到段落末尾
    ndd 
    从光标位置向下连续删除 n 行
    d'a
    从光标所在行 删除到 标记a 之间的所有代码
    y 复制 yy 复制一行,可以nyy复制多行
    p 粘贴
    重复上次命令
    r 替换当前字符 命令模式 R 替换当前行光标后的字符 替换模式
    >> 
    向右增加缩进
    << 
    向左减少缩进
    /str 
    查找str 
    向后查找当前光标所在单词 
    #
    向前查找当前光标所在单词 
    :%s/旧文本/新文本/g
    替换文件中的 所有出现的旧文本 
    i
    在当前字符前插入文本
    I
    在行首插入文本
    a 在当前字符后添加文本 A 在行末添加文本
    o 在当前行后面插入一空行 O 在当前行前面插入一空行

     

           

           

      

                       

                       

                        

                

                 

               

                 

                 

                

                

                  

                  

                 

                 

                   

  • 相关阅读:
    The Castle
    洛谷七月月赛
    Superprime Rib
    Leetcode 记录(201~300)
    03爬虫 爬取hfutxc成绩
    Leetcode 记录(101~200)
    LeetCode Weekly Contest 32
    Leetcode 记录(1~100)
    C++,java信息,文件传输
    毕业设计-自然场景下显著目标的检测
  • 原文地址:https://www.cnblogs.com/sky9408251/p/12036596.html
Copyright © 2011-2022 走看看