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
下一篇 2017-07-29

相关推荐

  • 马哥教育面授班22期:第一天课程练习

    Linux发展史:        1984年:Richard Stallman发起GNU项目和自由软件基金会创建开源的UNIX实用工具版本        创建通用公共许可证(GPL)        1991年:Linux Torvalds发…

    Linux干货 2017-05-16
  • MySQL复制

    目录: 1.备份与恢复 2.主从复制 3.主主复制 4.半同步复制 5.MHA 6.centos7搭建mariadb Galera集群 1.备份和恢复 备份工具:mysqldump+复制binlog xtrabackup (1) mysqldump+复制binlog 备份: mysqldump -E -R –triggers –master-data=2 –…

    2017-11-21
  • LAMP基于编译安装方式实现(httpd与php以fastcgi方式结合)3

    概述     在某些现有rpm包不能满足需求的时候,可能需要编译安装LAMP环境,本篇就介绍下php与httpd结合方式为fastcgi方式结合时的编译安装,同时,由于httpd与php以module方式结合时,仅是编译选项有所差别,故也会简单说明下编译选项的差异 环境     CentOS7系统,…

    Linux干货 2016-10-17
  • 马哥linux0803作业内容

    1. 创建sysadmins组 将用户user1,user2,user3加入sysadmins组中 将user3设置为sysadmins的管理员 用user3登录,将user2从组中移除 设置sysadmins的密码centos 设置user1 在创建新文件时,文件的所属组为sysadmins 删除user1…3 删除sysadmins 2、三种权限rwx对…

    Linux干货 2016-08-05
  • 马哥教育网络班21期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@centos ~]# mke2fs -t ext4 -b 2048 -m 2&…

    Linux干货 2016-08-01
  • Keepalived介绍 , 配置说明 , 及实际应用

    1. Keepalived介绍 Keepalived是一个基于VRRP协议来实现的服务高可用方案,可以利用其来避免IP单点故障,类似的工具还有heartbeat、corosync、pacemaker。但是它一般不会单独出现,而是与其它负载均衡技术(如lvs、haproxy、nginx)一起工作来达到集群的高可用。 1.1 VRRP协议 VRRP全称 Virt…

    Linux干货 2016-11-04