Linux——文件处理工具(一)

(1) 文件查看命令: cat,
tac,rev

cat [OPTION]… [FILE]…读取文件内容

E: 显示行结束符$

Linux——文件处理工具(一)

V :显示非打印字符

Linux——文件处理工具(一)

n: 对显示出的每一行进行编号

Linux——文件处理工具(一)

A:显示所有字符

Linux——文件处理工具(一)

b
非空行编号

s连续的空行变成一

Linux——文件处理工具(一)

T:显示Tab

Linux——文件处理工具(一)

tac:倒着显示作用

Linux——文件处理工具(一)

rev:把echo输入的内容倒着显示出来

<

p align=”left” style=”color:#085160;font-size:24pt”>
Linux——文件处理工具(一)

(2)分页查看文件内容

v more: 分页查看文件

more [OPTIONS…] FILE…

-d: 显示翻页及退出提示

v less:一页一页地查看文件或STDIN输出

查看时有用的命令包括:

/文本
搜索 文本

n/N 跳到下一个
或 上一个匹配

less 命令是man命令使用的分页器

(3)显示文本前或后行内容

v head 默认前十行

head [OPTION]… [FILE]…

-c #: 指定获取前#字节

-n #: 指定获取前#  标准输入:
head -n #
文件名

-#
指定行数

v tail 默认后十行   

tail [OPTION]… [FILE]…

-c #: 指定获取后#字节

-n #: 指定获取后#  标准输入:
tail -n #
文件名

-f: 跟踪显示文件新追加的内容,常用日志监控Ctrl+c终止运行退出

Linux——文件处理工具(一) 

 默认显示后十个的日志监控,tail n o f 文件名则显示最后一个

练习:显示/etc/passwd文件的第11行至第20

head n 20 /etc/passwd |tail

Linux——文件处理工具(一)

(4)按列抽取文本cut和合并文件paste

v cut [OPTION]… [FILE]…

-d : 指明分隔符,默认tab

f :选取第几列

Linux——文件处理工具(一)

#,#[,#]:离散的多个字段,例如1,3,6选取第a,b,..

Linux——文件处理工具(一)

##:连续的多个字段, 例如16选取ab

Linux——文件处理工具(一)


混合使用: 13,7

–output-delimiter=STRING指定输出分隔符

Linux——文件处理工具(一)

c 按字符切割适合内容格式规整的文件

练习:查出app分区的磁盘使用量

df|tr s [[:space:]]|head n 4|tail n 1|cut d ‘ ‘ f5|cut d ‘%’ f1

Linux——文件处理工具(一)

df|tr -s ” “%|head -n 4|tail -n 1|cut -d% -f5

Linux——文件处理工具(一)

df |head -n 4 |tail -n 1 |cut -c 44-46(最后一个命令是依靠切割字符

Linux——文件处理工具(一)

(5)cutpaste

v 显示文件或STDIN数据的指定列

cut d: f1 /etc/passwd

cat /etc/passwd | cut -d: -f7

cut -c2-5 /usr/share/dict/words

v paste 合并两个文件同行号的列到一行

paste [OPTION]… [FILE]…paste f1 f2

Linux——文件处理工具(一)

-d 分隔符:指定分隔符,默认用TAB   paste -d 指定的分隔符 文件1 文件2

Linux——文件处理工具(一)

-s : 所有行合成一行显示 paste s f1 f2

Linux——文件处理工具(一)

补充:cat 合并多个文件(不足:一个文件显示一行)

Linux——文件处理工具(一)

练习:显示当前主机第一个网卡的IP地址

ifconfig
|head
n 2| tail n 1| tr s ‘ ‘ : |cut d: f4

Linux——文件处理工具(一)

6分析文本的工具

v 文本数据统计: wc

v 整理文本: sort

v 比较文件: diffpatch

7收集文本统计数据wc

v计数单词总数、行总数、字节总数和字符总数

Linux——文件处理工具(一)


v可以对文件或STDIN中的数据运行

$ wc story.txt

39      237        1901 story.txt

行数 单词数
字节数

wc -l 来只计数行数

Linux——文件处理工具(一)

wc -w 来只计数单词总数

Linux——文件处理工具(一)

wc  -c 来只计数字节总数

Linux——文件处理工具(一)

wc -m 来只计数字符总数

Linux——文件处理工具(一)


8文本排序sort

v把整理过的文本显示在STDOUT,不改变原始文件

$ sort [options] file(s)

v常用选项

Ü -r 执行反方向(由上至下)整理

Ü -n 执行按数字大小整理

Linux——文件处理工具(一)

Ü -f 选项忽略(fold)字符串中的字符大小写

Linux——文件处理工具(一)

 u 选项(独特, unique)删除输出中的重复行

Linux——文件处理工具(一)

t c 选项使用c做为字段界定符

Linux——文件处理工具(一)

Linux——文件处理工具(一)

Ü -k X 选项按照使用c字符分隔的X列来整理能够使用多次

Linux——文件处理工具(一)

9uniq

v uniq命令:去除连续重复行

Linux——文件处理工具(一)

v uniq [OPTION]… [FILE]…

-c: 显示每行重复出现的次数

d: 仅显示重复过的行

u: 仅显示不曾重复的行

Linux——文件处理工具(一)

v 常和sort 命令一起配合使用:去除非重复的连续行

sort userlist.txt | uniq c

Linux——文件处理工具(一)

10比较文件

diff 命令 比较两个文件之间的区别

Linux——文件处理工具(一)

11复制对文件改变patch

v diff -u   适用于生成补丁文件。

v patch -b 选项来自动备份改变了的文件

练习:f1 f2两个文件中删除f2后利用补丁文件还原f2文件

diff u f1 f2 > diff.log 生成补丁

mv f2
f2.rm
  相当于删除了文件。

patch b f1 diff.log    通过补丁还原文件

mv f1
f2
    还原原始的新文件名

mv
f1.orig f1
  还原原始的旧文件名

diff
f2 f2.rm
  比较还原回来的新文件与被删除的文件,发现没有区别

Linux——文件处理工具(一)

原创文章,作者:lss,如若转载,请注明出处:http://www.178linux.com/83127

(0)
lsslss
上一篇 2017-07-29 15:42
下一篇 2017-07-29 16:35

相关推荐

  • Linux系统程序包的管理-Yum及编译安装

          Yum 是通过分析RPM的标头数据后,根据各软件的依赖关系制作出有依赖关系时的的解决方案,然后可以自动处理软件的依赖性问题,以解决软件安装或移除与升级的问题。       由于发行版必须要先释放软件,然后将软件放置于yum服务器上面,以提供用户端用来安装与升…

    2017-05-02
  • bash脚本循环语句用法练习

    bash脚本循环语句用法练习 1、使用循环语句写一个脚本,实现打印出来国际象棋的棋盘 #方法1:使用until循环语句实现 [root@liang7 bin]# cat chess-until.sh  #!/bin/bash #Author:liang #Version:1.0 #Description:Print&n…

    Linux干货 2016-08-24
  • Week1: Linux 初步

    1. 描述计算机的组成及其功能 一个完整的计算机系统由硬件系统和软件系统两大部分组成 冯诺依曼体系下的计算机五大部件 CPU:运算器、控制器、寄存器、缓存(一二三级缓存)) 存储器:内存 RAM(Random-Access Memory) Input:输入指令、提供数据 Output: 输出数据加工后的结果 要点:计算机中的信息(程序和数据)以二进制方式表示…

    Linux干货 2016-12-04
  • 8.1作业

    创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为“Gentoo Distribution” [root@localhost wang]# useradd -G bin,root -s /bin/csh -c "Gentoo&n…

    Linux干货 2016-08-02
  • 网络文件系统–NFS

        网络文件系统(英语:Network File System,缩写为NFS)是一种分布式文件系统协议,最初由Sun Microsystems公司开发,并于1984年发布。其功能旨在允许客户端主机可以像访问本地存储一样通过网络访问服务器端文件。     NFS和其他许多协议一…

    Linux干货 2017-08-14
  • 通过虚拟机制作RAID5

    制作RAID5的过程,包括制作RAID5的制作,增加和删除RAID

    2017-12-10