• Linux基础命令(三)——>文件过滤及内容编辑处理命令


    1、cat   合并文件或查看文件内容

    基本功能:cat   test.txt     查看文件内容 也可以多文件显示

                      cat  test1.txt test2.txt >test3.txt   把多个文件合并成一个

                      cat  >test.txt  创建编辑文件,后边接要编辑的内容ctrl+d或c可结束编辑  如果错了 需要按住CTRL+退格键

                      cat>>test.txt<<EOF       飞交互式编辑或追加内容到文件尾部  EOF必须成对出现  也可以用别的标签替换

                       hello wod    

                      EOF

                      cat  /dev/null >test.txt  情况文件内容 

    参数:-n  显示行号  

               -b 去除空行显示行号

               -E 每一行行尾带上$符号

               -s 当有连续以上的空白行,就替换为一行空白行

              -T Tab字符显示为 ^I

              -v  除了LFD和TAB  使用^和M-引用   

    2、tac 反向显示文件内容  是cat的反写   连个命令都是以一行文本为单位的

    参数:-b  在行前添加分割标志

               -r 将分割标志视为正在我表达式来解析

               -s 使用指定字符串进行分割

    3、more  分页显示文件内容

    语法:more  选项  文件

    参数:-num  指定屏幕显示大小为num行

               +num  从行号num开手显示

              -s  把连续的多个空行显示为一行

             -p  不滚屏  而是清楚整个屏幕 然后显示文本

             -c 不滚屏,从每一屏顶部开始显示文本,每显示完一行,就清楚这一行的剩余部分

    4、less 分页显示文件内容  比more更为强大

    语法:less  参数  文件

    参数:-i   搜索时忽略大小写

              -m  显示百分比

              -N   显示每行的行号

              -s   将连续空行压缩成一行

              -e   当显示到结尾时自动退出文件 ,若不用此选项参数,则需要输入q  退出交互模式

    5、head  显示文件内容头部  不接参数  默认显示10行

    参数:-n   指定显示的行数   head -5  eg1.txt

               -c   指定显示的字节数

                -q  不显示包含给定文件名的文件头

                -v   总是显示包含给定文件名的文件头

    6、tail  显示文件内容尾部  默认10行

    实例:

    tail -5 eg1.txt  显示后5行

    tail -n +5  eg1.txt  从第5行开始显示

    7、tailf  跟着日志文件  等同于 tail -f 不同的是如果文件不增长,那么她不会去访问磁盘,也不会更改访问时间

    tailf -n(指定显示的行数)  文件

    8、cut 从文本中提取一段文字并且输出

    参数:-c 以字符单位进行分割

               -d 自定义分割符,默认以tab为分割符

               -f  与-d一起使用,指定显示区域

               N 第N个字节或字段

               N-  第N个字节或字段至末尾

               N-M 第N-M个字节或字段 包含M

               -M 第1到M(含)个字节或字段

    实例:

    cut -b  3 eg1.txt  每一行只输出第三个字节

    cut -b 3-5,8 eg1.txt    输出3-5的字节和第8个字节

    cut -b 3-   eg1.txt    输出第2个字节至行尾

    9、split 分割文件

    语法:split   选项   输入文件   输入文件名前缀

    参数:-b  指定分割后文件的最大字节数

               -l  指定分割后最大行数

               -a  指定后缀长度

               -d  使用数字后缀

    实例:

    [root@mrxw eg]# split -l 3 eg1.txt new_  默认字母后缀
    [root@mrxw eg]# ls  
    eg1.txt  eg2.txt  eg3.txt  new_aa  new_ab  new_ac  new_ad  new_ae

    [root@mrxw eg]# split -l 3 -d eg1.txt new_    数字后缀
    [root@mrxw eg]# ls
    eg1.txt  eg2.txt  eg3.txt  new_00  new_01  new_02  new_03  new_04  new_aa  new_ab  new_ac  new_ad  new_ae

    cut -b 100k -d eg1.txt new_    按大小分割

    10、paste 合并文件

    语法:paste 选项  文件

    参数:-d  指定合并的分割符  默认TAB

              -s 每个文件占一行

    实例:

    [root@mrxw eg]# paste eg1.txt eg2.txt
    1  one

    [root@mrxw eg]# paste -d: eg1.txt eg2.txt
    1:one

    [root@mrxw eg]# cat eg1.txt
    1
    2
    3
    4
    5
    [root@mrxw eg]# paste -s eg1.txt
    1 2 3 4 5

    11、sort 文本排序

    sort eg1.txt 默认升序排序

    参数: -b 忽略每行开通的空格

                -n 按数值大小进行排序

                -r 倒序排序

                -u 去除重复行

                -t 指定分隔符

                -k 按指定区间排序

    12、join 按两个文件相同字段合并  但必须是排序过后的

    join eg1.txt eg2.txt

    13、uniq  去除重复行(只能是相邻的)

    -c  去除重复行,并计算每行出现的次数

    -d  只显示重复行

    -u 只显示唯一行

    sort -n eg1.txt | uniq -c

    14、wc 统计文件的行数,单词数或者字节数

    wc -c eg1.txt  统计字节数

    wc -l  eg1.txt 统计行数

    wc -L eg1.txt 打印最长行的长度

    15、iconv  转换文件的编码格式

    语法: iconv  选项   原编码  新编码  输入文件

    参数:-f  encodingA  从编码A转化

              -t  encofdingB  转换成编码B

              -l  显示系统支持的编码

              -o  将输出输入到指定文件

    实例:iconv  -f gb2312 -t utf-8 eg1.txt

    16、dos2unix  将DOS(windows)格式文件转换成UNIX格式

    DOS的文件是以‘ ’作为转换标志    dos2unix   将‘ ’转换成‘ ’

    UNIX是‘ ’   unix2dox  将   转换成 

    不经过转换会出错

    语法:dos2unix  文件

    17、diff  比较两个文件的不同  可以逐行比较   并输出文件的差异

    diff  文件1   文件2

    参数:-y  以并列的方式显示    -W 使用-y参数  指定显示宽度    -c 使用上下文输出格式  -u使用统一格输出

    diff 还可以比较目录

    18、vimdiff  可视化比较工具

    退出需要执行两次(:q)

    19、rev 反向输出文件内容

    rev eg1.txt

    20、tr 替换或删除字符

    tr  选项  字符1  字符2 <文件

    参数:-d  删除字符    -s  保留连续字符的第一个字符,删除其他字符   -c 使用第一个字符串的补集 取反

    [root@mrxw eg]# tr -d hell <eg1.txt   删除指定字符

     word

    tr -d ' ' <文件   删除所有换行符和TAB

    tr  '[0-9]'  '[a-j]' <文件  数字替换成字母

    tr -c   '0-9'  '*'  <文件    除了数字外其他的都替换成*

    21、od  按不同进制显示文件

    22、tee 多重定向

    tee  选项  文件

    参数  -a  向文件追加内容  而不是覆盖

    23 vi  vim  文本编辑器命令

                      

  • 相关阅读:
    Linux下redis的安装
    elasticsearch使用时问题
    Elasticsearch 2.x plugin 问题汇总
    elasticsearch-jdbc 插件说明
    ElasticSearch 2.x 问题汇总
    深入JVM《一》
    linux fastdfs 搭建配置(单机)
    mybatis自动generator
    spring-boot mybatis 配置 主从分离 事务
    Maven Nexus
  • 原文地址:https://www.cnblogs.com/Mr-wx/p/8933656.html
Copyright © 2020-2023  润新知