文本处理工具详解

一、cat命令

cat:文件查看

格式:cat [OPTION]...[FILE]..

OPTION:

-E:显示行结束符$;

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

-A:显示所有控制符;

-b:非空行编号;

-s:压缩连续的空行成一行;

-T显示制表符;

tac:逆向显示文件内容,与cat命令相反;

rev:行文件内容逆向显示;

eg1:显示所有控制符

eg2:显示制表符

eg3:显示行号

eg4:压缩空行成一行

eg5:非空行编号

eg6:tac:逆向显示文件内容

eg7:逆向显示行文件内容

二、more命令

more:分页查看文件内容

格式:more [OPTIONS...] [FILE]...

OPTIONS:

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

三、less命令

less:分页查看文件内容

查看时有用的命令包括:

/文本:搜索文本

n:向下匹配

N:向上匹配

四、head命令

head:显示文本前几行内容(默认显示前10行)

格式:head [OPTION]... [FILE]...

OPTION:

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

-n #: 指定获取前#行

-#: 指定行数

五、tail命令

tail:显示文本后几行内容(默认显示后10行)

格式:tail [OPTION]... [FILE]...

OPTION:

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

-n #: 指定获取后#行

-#:指定行数

-f: 跟踪显示文件新追加的内容,常用日志监控

            eg:tail -n0 -f filename &:后台运行,既能查看内容又能做别的事

六、cut命令

cut:按列切割文本内容

格式:cut [OPTION]... [FILE]...

OPTION:

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

-f FILEDS:

#: 第#个字段

#,#[,#]:离散的多个字段,例如1,3,6

#-#:连续的多个字段, 例如1-6 混合使用:1-3,7

-c 按字符切割

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

              eg1:
                [[email protected] testdir]# cut -d: -f1 /etc/passwd
                    ##以冒号做分隔符,取文件第一列,也就是用户名;
                    
            eg2:
                [[email protected] testdir]# cut -d: -f1,3 /etc/passwd
                    ##以冒号做分隔符,取文件第一、第三列,我就是用户名和UID;
                    
            eg3:
                [[email protected] testdir]# cut -d: -f1,3,5-7 /etc/passwd
                    ###以冒号做分隔符,取用户名、UID和shell类型;

eg4:

eg5:

七、paste命令

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

格式:paste [OPTION]... [FILE]...

OPTION:

-d 分隔符:指定分隔符,默认用TAB

-s : 所有行合成一行显示

paste f1 f2

paste -s f1 f2

eg1:

eg2:

eg3:

八、wc命令

wc:字符统计(默认显示行数、单词数、字节数)

格式:wc [OPTION]... [FILE]...

OPTION:

-l:统计行数

-w:统计单词个数

-c:统计字节总数

-m:统计字符总数

九、sort命令

sort:文本排序(不改变原始文件)

格式:sort [OPTION] file

OPTION:

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

-n 执行按数字大小整理

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

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

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

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

             eg1:
                [[email protected] testdir]# sort -t: -k 3 -n /etc/passwd
                    ##以冒号做分隔符,取第三列按数字大小进行正向排序
                    
            eg2:
                [[email protected] testdir]# sort -t: -k 3 -nr /etc/passwd
                    ##以冒号做分隔符,取第三列按数字大小进行逆向排序

十、uniq命令

uniq命令:从输入中删除重复前后相接的行

格式:uniq [OPTION]... [FILE]...

OPTION:

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

-d: 仅显示重复过的行

-u: 仅显示不曾重复的行

注:连续且完全相同方为重复

常和sort 命令一起配合使用:sort  userlist.txt  |  uniq-c

eg1(vim /uniq.txt)

eg2:uniq命令什么选项都不加,仅显示连续重复的行一次

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

eg4:仅显示重复过的行

eg5:仅显示不曾重复过的行

十一、比较文件

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

patch:向文件打补丁

-b:自动备份改变了的文件

       diff foo.conf-broken foo.conf-works
         5c5
        < use_widgets = no
        --
        > use_widgets = yes 
        注明第5行有区别(改变)

eg1:

eg2:使用 -u 选项来输出“统一的(unified)”diff格式文件,最适用于补丁文件。

eg3:打补丁;删除f2文件,使用patch来恢复f2文件,-b自动备份改变了的文件(f1),执行之后f2文件就恢复了,但是文件名不叫f2,而是f1;而原来的f1文件改名叫f1.orig;

时间: 2024-10-16 08:01:52

文本处理工具详解的相关文章

linux基础--awk文本分析工具详解

简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本. awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK

在虚拟机里安装VMwareTools工具(详解)

首先要确保 你当前 虚拟机这款软件 是否是正常版本, 因为有些虚拟机软件 简体版,导致无法安装VMwareTools工具. 如果没有问题,就可以进入正题了: 1. 在菜单栏里,选择虚拟机菜单的子菜单安装VMwareTools, 此时你会发现 Linux系统里多了一个VMwareTools光盘, 打开之后,就会发现 有一个压缩包:VMwareTools-5.5.3-34685.tar.gz, 将这个压缩包 复制到 /tmp 目录下,在地址栏里输入/tmp 按回车键,即可转入到/tmp 目录了, 然

convmv编码转换工具详解

convmv编码转换工具详解文件名转码的工具--convmv,convmv能帮助我们很容易地对一个文件,一个目录下所有文件进行编码转换,比如gbk转为utf8等.安装 yum install convmv语法:convmv [options] FILE(S) ... DIRECTORY(S)主要选项:1.-f ENCODING指定目前文件名的编码,如-f gbk2.-t ENCODING指定将要转换成的编码,如-f utf-83.-r递归转换目录下所有文件名4.--list列出所有支持的编码5.

Linux进程管理工具详解:htop、glances、dstat

1.进程相关知识     1.操作系统的功能:文件系统.网络功能.进程管理.内存管理.安全功能.驱动程序(Linux是一个多任务的操作系统,而且是抢占式的多任务操作系统);.OS其实就是提供虚拟的计算机,进而能够将有限的资源借助于"保护"机制分配多个同时运行的程序,即"进程"使用,从而实现了所谓的多任务 2.程序执行环境有2种: 内核模式:cpu运行内核级指令 用户模式:cpu运行普通指令 3.应用程序运行普通指令,其实是直接运行于cpu上:应用程序运行特权指令,是

rpm包安装和卸载,rpm查询,yum工具详解,yum仓库搭建

rpm包安装和卸载 [[email protected] Packages]# rpm -ivh zip-3.0-1.el6.x86_64.rpm    安装rpm包命令   ivh I=安装的意思install    v=可视     h =显示安装进度 mount /dev/cdrom  /mnt/  挂载到mnt下 cd /mnt/ cd packages Ls    查看rpm包 遇到有相互依赖的包,两个包一起安装 卸载也是一样的 两个包同时卸载 rpm -e yp -tools ypb

mysql 自带工具详解

MySQL自带工具使用介绍:1)mysql命令:mysql命令事是使用最多的命令工具了,为用户提供了一个命令行接口来操作管理MySQL的服务器.命令格式:Usage:mysql [OPTIONS][database]例:mysql -e "select user,host from user" mysqlmysql --help 可以得到相应的基础使用帮助信息-e : --execut=name :我们要执行-e后面的命令,但是并不通过mysql连接进入mysql交互界面.此参数在我们

Java定时任务工具详解之Timer篇

Java定时任务调度工具详解 什么是定时任务调度? ◆ 基于给定的时间点,给定的时间间隔或者给定的执行次数自动执行的任务. 在Java中的定时调度工具? ◆ Timer       ◆Quartz Timer和Quarzt的区别? ◆ 出身不同(Timer由JDK直接提供,调用方式简单粗暴,不需要别的jar支持) ◆ 能力区别(TImer简单的定时任务,如需要每个星期天的8点,则需要Quarzt) ◆ 底层机制 原文地址:https://www.cnblogs.com/caifenglin/p/

[转帖]前端-chromeF12 谷歌开发者工具详解 Network篇

前端-chromeF12 谷歌开发者工具详解 Network篇 https://blog.csdn.net/qq_39892932/article/details/82493922 blog 也是原作者转帖的 应该是 不过挺好的 可以在1906 里面仔细实验学习一下. 原文链接:https://segmentfault.com/a/1190000010302235 开发者工具初步介绍 chrome开发者工具最常用的四个功能模块: Elements:主要用来查看前面界面的html的Dom结构,和修

[转帖]前端-chromeF12 谷歌开发者工具详解 Sources篇

前端-chromeF12 谷歌开发者工具详解 Sources篇 原贴地址:https://blog.csdn.net/qq_39892932/article/details/82498748 console 里面的东西 前端的不懂啊.. 这次分享的是Chrome开发工具中最有用的面板Sources. Sources面板几乎是我最常用到的Chrome功能面板,也是在我看来决解一般问题的主要功能面板.通常只要是开发遇到了js报错或者其他代码问题,在审视一遍自己的代码而一无所获之后,我首先就会打开So