网站首页 > 文章中心 > 其它

linux读取文本的命令

作者:小编 更新时间:2023-08-16 14:42:23 浏览量:52人看过

Linux如何使用正则表达式命令?文本文件操作命令

Linux对文本操作命令及正则表达式:

cat

cat 是 concatenate 的缩写,所以它的作用其实是连接文件.但默认情况下它会将连接文件的结果送到标准输出.所以我们常用来显示文件内容.类似于 dos 中的 type.

more

当一个文件的内容超过一屏后,我们可以用 more 这个指令来逐屏 察看 文件内容.

less

less 在 more 的基础上,更可以逐行 察看 ,前后翻页.

head

head 显示文件开头部分内容,默认显示前十行参数 --lines 或者 –n 指明显示行数基本格式:

tail

tail 显示文件结尾部分内容,命令用法同 head,参数 -f 显示文件的纪实更新,用于监视日志文件

tail 默认显示文件列表中每个文件的后 10 行,如果没有文件名或文件名为"-"则其从标准输入中读取文件,如果有多个文件则其会在文件前面加上"==文件名=="以便区别.

# tail /etc/mail/sendmail.mc 默认查看文件的后 10 行内容

注意: # tail –f /var/log/message 实时监控日志文件更新信息,非常重要

diff

diff 用于比较两个文件之间的区别,并送到标准输出.输出时先报告两个文件的哪一行不同.基本格式:

参数:

uniq 用于去除文本中相邻的重复行.

-u 参数可以只显示那些没有被重复过的行. -d 显示有被重复过的行.

cut

cut 可以根据一个指定的标记(默认是 tab)来为文本划分列,然后将此列显示.使用权限:所有使用者

sort 用来按各种需要重新排列文本,一般运用在一个管道之后.例如:

默认情况下 sort 按照字母顺序排列文本.

wc

wc 用来统计一个文件的行数、词数、字数并送到标准输出.也可以用-l(行数)、-w(词数)、-c(字数)来指定输出内容.

Linux下常用文本处理命令

Linux下常用文本处理命令大全

Linux下面有很多经典的非常有用的命令,其中处理文本的命令就有很多.下面就让我们一起看看这些经典的Linux文本处理命令有哪些吧.

一. sort

文件排序, 通常用在管道中当过滤器来使用. 这个命令可以依据指定的关键字或指定的字符位置, 对文件行进行排序. 使用-m选项, 它将会合并预排序的输入文件. 想了解这个命令的全部参数请参考这个命令的info页.

二. tsort

拓扑排序, 读取以空格分隔的有序对, 并且依靠输入模式进行排序.

三. uniq

这个过滤器将会删除一个已排序文件中的重复行. 这个命令经常出现在sort命令的管道后边.

四. expand, unexpand

expand命令将会把每个tab转化为一个空格. 这个命令经常用在管道中.

unexpand命令将会把每个空格转化为一个tab. 效果与expand命令相反.

五. cut

一个从文件中提取特定域的工具. 这个命令与awk中使用的print $N命令很相似, 但是更受限. 在脚本中使用cut命令会比使用awk命令来得容易一些. 最重要的选项就是-d(字段定界符)和-f(域分隔符)选项.

六. paste

将多个文件, 以每个文件一列的形式合并到一个文件中, 合并后文件中的每一列就是原来的一个文件. 与cut结合使用, 经常用于创建系统log文件.

七. join

这个命令与paste命令属于同类命令. 但是它能够完成某些特殊的目地. 这个强力工具能够以一种特殊的形式来合并两个文件, 这种特殊的形式本质上就是一个关联数据库的简单版本.

join命令只能够操作两个文件. 它可以将那些具有特定标记域(通常是一个数字标签)的行合并起来, 并且将结果输出到stdout. 被加入的文件应该事先根据标记域进行排序以便于能够正确的匹配.

八. head

把文件的头部内容打印到stdout上(默认为10行, 可以自己修改). 这个命令有一些比较有趣的选项.

九. tail

将一个文件结尾部分的内容输出到stdout中(默认为10行). 通常用来跟踪一个系统logfile的.修改情况, 如果使用-f选项的话, 这个命令将会继续显示添加到文件中的行.

十. wc

wc可以统计文件或I/O流中的"单词数量":

十一. fold

十二. fmt

一个简单的文件格式器, 通常用在管道中, 将一个比较长的文本行输出进行"折行".

十三. col

这个命令用来滤除标准输入的反向换行符号. 这个工具还可以将空白用等价的tab来替换. col工具最主要的应用还是从特定的文本处理工具中过滤输出, 比如groff和tbl. (译者: 主要用来将man页转化为文本.)

十四. column

列格式化工具. 通过在合适的位置插入tab, 这个过滤工具会将列类型的文本转化为"易于打印"的表格式进行输出.

十五. colrm

Caution: 如果这个文件包含tab和不可打印字符, 那将会引起不可预期的行为. 在这种情况下, 应该通过管道的手段使用expand和unexpand来预处理colrm.

十六. nl

计算行号过滤器. nl filename将会把filename文件的所有内容都输出到stdout上, 但是会在每个非空行的前面加上连续的行号. 如果没有filename参数, 那么就操作stdin.

nl命令的输出与cat -n非常相似, 然而, 默认情况下nl不会列出空行.

十七. pr

格式化打印过滤器. 这个命令会将文件(或stdout)分页, 将它们分成合适的小块以便于硬拷贝打印或者在屏幕上浏览. 使用这个命令的不同的参数可以完成好多任务, 比如对行和列的操作, 加入行, 设置页边, 计算行号, 添加页眉, 合并文件等等. pr命令集合了许多命令的功能, 比如nl, paste, fold, column, 和expand.

一个非常有用的选项-d, 强制隔行打印(与sed -G效果相同).

十八. gettext

GNU gettext包是专门用来将程序的输出翻译或者本地化为不同国家语言的工具集. 在最开始的时候仅仅支持C语言, 现在已经支持了相当数量的其它程序语言和脚本语言.

想要查看gettext程序如何在shell脚本中使用. 请参考info页.

十九. msgfmt

一个产生二进制消息目录的程序. 这个命令主要用来本地化.

二十. iconv

一个可以将文件转化为不同编码格式(字符集)的工具. 这个命令主要用来本地化.

二十一. recode

可以认为这个命令是上边iconv命令的专业版本. 这个非常灵活的并可以把整个文件都转换为不同编码格式的工具并不是Linux标准安装的一部分.

二十二. TeX, gs

TeX和Postscript都是文本标记语言, 用来对打印和格式化的视频显示进行预拷贝.

TeX是Donald Knuth精心制作的排版系统. 通常情况下, 通过编写脚本的手段来把所有的选项和参数封装起来一起传到标记语言中是一件很方便的事情.

Linux文本操作常用命令

在Linux系统里常用于文本查看、操作、统计的命令:

通过多敲键盘,形成手感 肌肉记忆 ,熟练掌握这些命令,在以后生信分析中游刃有余.以下是每个命令的详细的介绍(主要是跟着 生信技能树小郭老师 学习做的笔记)

此时此刻呢通过示例把10个命令的常用参数和用法展示出来:

参数的用法介绍:

注意事项:

zcat可以查看压缩的文本文件,tac逆向查看

结合 管道符| 使用

less命令用得最多 ,more命令用得比较少

less [参数] 文件名

less命令重要的补充用法1 :

需要注意 退出 :只要使用less命令, 按q键

参数用法:

less命令 不加参数 查看文件:

less命令加 -N参数 查看文件:显示行号

less命令加 -S参数 查看文件:单行显示,非常规整

对比:less和cat命令显示文本行号的用法:less -N,cat -n

**more ** 逐页查看,按空格翻页,按回车换行 ,more命令一般很少用,熟练掌握less命令就好

查看压缩文件

wc 统计字符是也把换行符统计进去,但是别的命令不一定会把换行符算进去,.

常见参数:

切记:用less命令,按q退出

cut命令是按关键词来切的

排列前:

排列后:

命令行查看一个表格结构时,因为制表符对齐的原因,出现一个错位的现象.还有 字典排序 可能和我们平时的认知不一样,所以 加上-n参数 , 让数值有数学意义上的大小来排序 .

uniq命令去重,只有两行出现重复,而且是相邻的两行,如果不相邻,即使出现两行一模一样,不会去重.

uniq命令通常和sort命令搭配使用

换其它文件试试

都说到这里了大家应该明白,uniq命令使用时经常和sort一起

常见用法1:

-s :按行合并 演示

要养成一个好习惯,原始数据不要轻易修改,修改的东西另外保存,文本保存用 (重定向)或是 (追加)

① 用 less 查看 example.gtf ,然后管道符传递给 wc

补充小知识 :

清屏 :control L

查看历史(输入过的)命令 :history

linux查看文件内容命令

①cat由第一行开始显示文件内容

用法:

cat-A 相当于-vET的整合选项,可列出一些特殊字符而不是空白;

cat-b 列出行号,仅针对非空白行做行号显示,空白行不标行号;

cat-E 将结尾的断行字节$显示出来;

cat-n 列印出行号,连同空白行也会有行号,与-b的选项不同;

cat-T 将[tab]按键以^I显示出来;

cat-v 列出一些看不出来的特殊字符;

tac-b 在行前而非行尾添加分隔标志;

tac-r 将分隔标志视作正则表达式来解析;

tac-s 使用指定字符串代替换行作为分隔标志;

nl-b a 无论是否为空行,均列出行号;

nl-b t 空行不列出行号;

nl-n ln 行号在荧幕的最左方显示;

nl-n rn 行号在自己栏位的最右方显示,且不加0;

nl-n rz 行号在自己栏位的最右方显示,且加0;

nl-w 行号栏位的占用的位数;

在more程序运行过程中,可以按以下键:

空白键(space):代表向下翻一页;

Enter:代表向下翻『一行』;

/字串:代表在这个显示的内容当中,向下搜寻『字串』这个关键字;

:f:立刻显示出档名以及目前显示的行数;

q:代表立刻离开more,不再显示该文件内容.

b或[ctrl]-b:代表往回翻页,不过这动作只对文件有用,对管线无用.

less运行时可以输入的命令有:

空白键:向下翻动一页;

[pagedown]:向下翻动一页;

[pageup]:向上翻动一页;

/字串:向下搜寻『字串』的功能;

字串:向上搜寻『字串』的功能;

n:重复前一个搜寻(与/或?有关!);

N:反向的重复前一个搜寻(与/或?有关!);

q:离开less这个程序;

语法:

head-n 后面接数字,代表显示行数;

tail-n 后面接数字,代表显示行数;

tail-f 表示持续侦测后面所接的档名,要等到按下[ctrl]-c才会结束tail的侦测;

以上就是土嘎嘎小编为大家整理的linux读取文本的命令相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章