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

相关推荐

  • 常用命令总结

    ifconfig查看IP地址 date查看日期和时间 cd跳转到任何目录 useradd新建一个普通用户 passwd给用户设置密码 poweroff   halt    关机 reboot  重启 cal  查看日历 cal -y 查看一年日历 env  export&nbsp…

    Linux干货 2017-04-04
  • vim编辑器的常见使用

    1、vim介绍 Vim是从 vi 发展出来的一个文本编辑器,处理文本文件功能强大。 三种主要模式: Vim打开文件,默认命令(Normal)模式,可以移动光标,剪切和粘贴。 按键i 进入插入(Insert)模式,用户可以编辑文本。 扩展(Extended)命令模式(或末行模式)用户:wq可保存退出,或者:q!强制退出。 Exc按键可退出当前模式。 2、文本操…

    Linux干货 2017-07-30
  • “Apache” 服务器中的战斗机

    一,apache世界使用排名第一的web服务器软件。它被音译为阿帕奇,与武装直升机里的佼佼者阿帕奇同名,它虽没有阿帕奇那么霸气的外观,但是它具有和它一样的强大火力,它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中…

    2017-08-19
  • 8月3日作业

    文件权限相关的课堂练习: 1)当用户xiaoming对/testdir 目录无执行权限时,意味着无法做哪些操作?     用户小明不能进入/testdir,不能删除,不能创建。使用ll能看到有哪些文件,但是看不到具体信息 2)当用户xiaoqiang对/testdir 目录无读权限时,意味着无法做哪些操作? 不能查看文…

    Linux干货 2016-08-07
  • 正则表达式30分钟入门教程

    来园子之前写的一篇正则表达式教程,部分翻译自codeproject的The 30 Minute Regex Tutorial。 由于评论里有过长的URL,所以本页排版比较混乱,推荐你到原处查看,看完了如果有问题,再到这里来提出. 一些要说的话: 如果你没有正则表达式的基础,请跟着教程“一步步来”。请不要大概地扫两眼就说看不懂——以这种态度我写成什么样你也看不…

    2015-03-12