linux文本管理工具命令详解

文件处理查找工具:

文件查看命令:cat,tac,rev,diff



  • 1、cat :concatenate files and print on the standard output #查看文件和打印出

usage:cat [OPTION]… [FILE]…

  • -E,–show-ends 显示行结束符$
  • -n,–number 对显示出的每一行进行编号
  • -A,–show-all 显示所有控制符
  • -b,–number-nonblank 对空行不编号
  • -s,–squeeze-blank 压缩连续的空行成一行

示例
[root@localhost app]# cat -n issue
1 \S
2 Kernel \r on an \m
3
[root@localhost app]# cat -E issue
\S Kernel\ronan\m
$
[root@localhost app]# cat -b issue
1 \S
2 Kernel \r on an \m


  • 2、rev : reverse lines of a file or files #行反显示

    usage:rev [options] [file …]

    示例
    [root@localhost app]# rev issue
    S\
    m\ na no r\ lenreK

  • 3、tac :concatenate and print files in reverse 页面反向显示
    usage: tac [OPTION]… [FILE]…
    示例
    [root@localhost app]# tac issue
    Kernel \r on an \m
    \S

分页查看文件内容:


  • 1、more :file perusal filter for crt viewing #分页查看文件
    -d:显示翻页及退出提示</li>
    

    • 2、less opposite of more #一页一页地查看文件或stdin输出
      more到达末尾直接退出,less阅读完不直接退出。

显示文本前后行内容:


  • 1、head 命令 output the first part of files 行首输出文件

    usage:head [OPTION]… [FILE]…

    • -c –bytes=[-]K # 指定获取前#字节
    • -n, –lines=[-]K # 指定获取前#行
    • -# 指定行数

    示例
    [root@localhost app]# head -c20 passwd #显示前20个字节
    root:x:0:0:root:/roo[root@localhost app]#
    [root@localhost app]# head -5 passwd #显示前5行
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin


  • 2、tail命令 output the last part of files #从文件最后一行读取

    usage: tail [OPTION]… [FILE]…

    • -c # 指定获取后#字节
    • -n # 指定获取#行
    • -f 跟踪显示文件新追加的内容,常用日志监控

    示例
    tail -f f11 &
    后台运行 如果在另一个终端输入内容,不会影响此终端的正常工作;
    watch 动态查看 但与tail区别是·:显示内容需要等一秒才在屏幕中显示


  • 3、cut命令:

    usage: cut OPTION… [FILE]…

    • -d 指明分隔符 默认为tab
    • -f 指定字段 # 第#个字段 #,# 离散的多个字段 #-# 连续的多个字段
    • -c 按字符切割
    • –output-delimiter=STING 指定输出分隔符

    示例
    [root@localhost app]# cat passwd |cut -d: -f3,5 –output-delimiter=-


  • 4、paste命令 merge lines of files #合并两个文件同行号列到一行;

    usage: paste [OPTION]… [FILE]…

    • -d 分隔符:指定分隔符,默认为TAB
    • -s, –serial:所有行合成一行显示

    示例
    [root@localhost app]# paste -d: f1 issuemerge lines of files #以分隔符“:”合并这两个文件
    [root@localhost app]# paste -s f1 issue


收集文本统计数据:


  • 1、wc 命令

usage:wc [OPTION]… [FILE]…
- -l –lines 计数行数
- -c –bytes 计数字节数
- -w –words 计数单词数
- -m –chars 计数字符总数

示例
[root@localhost app]# cat passwd |wc -l #计数passwd文件行数
51
[root@localhost app]# cat passwd |wc -c #计数passwd文件字节数
2584
[root@localhost app]# cat passwd |wc -w #计数passwd文件单词数
96
[root@localhost app]# cat passwd |wc -m #计数passwd文件字符数
2584


  • 2、sort命令 sort lines of text files


  • -r 执行反方向整理
    • -n 按数字大小整理
    • -f 忽略字符大小写
    • -u 删除输出中的重复行
    • -t c 现象使用c作为字段界定符
    • -k 指定哪个字段

示例
[root@localhost app]# cat passwd |sort -t: -n -k3 #以:为分隔符,第三个字段排序


  • 3、uniq命令 report or omit repeated lines


  • -c –count 显示每行重复出现的次数
  • -d –repeated 仅显示重复过的行
  • -u –unique 仅显示不重复的行(连续且完全相同则为重复)

示例:
[root@localhost app]# cat issue |uniq -c -u #显示不重复的行次数
[root@localhost app]# cat issue |uniq -d -c #显示重复行的次数


  • 4、diff命令:compare files line by line #比较两个文件之间的区别;

    usage:diff [OPTION]… FILES
    diff f1 f1 > patch.log
    通常和patch同时使用;

  • 5、patch apply changes to files #修改补丁;

    -u 输出“统一的”diff格式文件,最适用于补丁文件;
    注意:patch复制到其他文件中会改变(要谨慎使用)
    -b 自动备份改变了的文件;
    patch -b patch.log f1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值