文本处理命令在Linux的使用过程中也是很基础的知识,我来总结一下linux文本处理命令的使用。

基础命令:

cat / more / less / grep / head / tail / wc  / uniq / cut / sort / join / paste      tr / tee /  split / spell / diff / printf /

1.cat 连接文件并显示内容

-n 对输出的文本进行编号

-b 对输出的文本进行编号,但是不对空白行编号

-s 将两行以上的空白行替换为一行空白行

-E 在每一行的结尾显示“$”

-T 用“^”I代替“TAB”作为显示

2.more 文件内容分屏查看

-d 当用户错误输入时产生提示符

-f 计算实际行数

-p 不卷页显示,而是清屏,然后显示内容

+/搜寻指定字符串,并从此处开始显示

+num 从指定行开始显示

3.less分屏显示文件内容-e 当文件显示结束后,自动离开

-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件

-g 只标志最后搜索的关键词

-i 忽略搜索时的大小写

-m 显示类似more命令的百分比

-N 显示每行的行号

-o 将less 输出的内容在指定文件中保存起来

选择参数

按键功能如下:

b 向后翻一页

d 向后翻半页

h 显示帮助界面

Q 退出less 命令

u 向前滚动半页

y 向前滚动一行

空格键 滚动一行

回车键 滚动一页

4.head 显示文件头部内容

将打印文件的前10行道标准输出,如果不指定文件,将从标准输入中输入

-c 显示文件前N字节数

-n 显示文件的前N行数

5.tail 输出文件尾部内容-f 循环读取,当文件内容增加时,持续显示新增在后面的内容,常用来监控日志文件

-q 不显示处理信息

-v 显示详细的处理信息

-c 显示的字节数

6.wc 统计文件的字节数,单词数和行数

-c 显示字母数

-l 显示行数

-w 显示单词数

7.uniq 报告或忽略文件中的重复行

-c 显示重复次数

-d 显示重复行

-u 显示没有重复的行

8.cut 剪切删除文件中的指定段

-b= 只输出指定的字节数

-c= 只输出指定的字符

-d= 使用定界符代替TAB键

-f= 只输出指定的域。

9.sort 对文件进行行排序

-b 忽略行前的空格

-c 检查是否已排序过

-d 排序时只识别英文数字及空格

-f 把小写字母看作大写字母

-m 合并排序好的文件

-n 按照数值排序

-r 逆序排序

10 join 文件1 文件2

针对每一对具有相同内容的输入行,整合为一行写到标准输出,

默认的内容连接区块是由第一个空白符代表的分界符号。当文件1

或文件2 都被指定为"-"时,程序将从标准输入读取数据。

将两个文件

内容相同的行连接起来

root@snail-hnlinux:~# cat test1 //显示文件test1 的内容

a 01

b 02

c 03

d 04

e 05

root@snail-hnlinux:~# cat test2 //显示文件test2 的内容

a xxx

b www

c jjj

d kkk

e lll

root@snail-hnlinux:~#

root@snail-hnlinux:~# join test1 test2 //连接两个文件

a 01 xxx

b 02 www

c 03 jjj

d 04 kkk

e 05 lll

root@snail-hnlinux:~# join test2 test1

a xxx 01

b www 02

c jjj 03

d kkk 04

e lll 05

11.split 将大文件切割成为小文件-d 使用数字而不是字母作为切割后的小文件的后缀;

-v 显示详细的处理信息

-b 每个分割文件的大小

-l 指定切割的行数作为切割文件的单位;

-C 指定输出到每一个文件的每一行的大小,数字后缀可以是

b: 512(blocks)

K: 1024(kibiBytes)

KB: 1000(kiloBytes)

M: 1024*1024(mebiBytes)

MB: 1000*1000(megaBytes)

G: 1024*1024*1024(gibiBytes)

GB: 1000*1000*1000(gibaBytes)

12.tr从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。-d, --delete            删除匹配SET1 的内容,并不作替换

-s, --squeeze-repeats    如果匹配于SET1 的字符在输入序列中存在连续的

重复,在替换时会被统一缩为一个字符的长度

-t, --truncate-set1        先将SET1 的长度截为和SET2 相等

SET 是一组字符串,一般都可按照字面含义理解。解析序列如下:

\NNN    八进制值为NNN 的字符(1 至3 个数位)

\\        反斜杠

\a        终端鸣响

\b        退格

\f        换页

\n        换行

\r        回车

\t        水平制表符

\v        垂直制表符

字符1-字符2    从字符1 到字符2 的升序递增过程中经历的所有字符

[字符*]    在SET2 中适用,指定字符会被连续复制直到吻合设置1 的长度

[字符*次数]    对字符执行指定次数的复制,若次数以 0 开头则被视为八进制数

[:alnum:]    所有的字母和数字

[:alpha:]    所有的字母

[:blank:]    所有呈水平排列的空白字符

[:cntrl:]    所有的控制字符

[:digit:]    所有的数字

[:graph:]    所有的可打印字符,不包括空格

[:lower:]    所有的小写字母

[:print:]    所有的可打印字符,包括空格

[:punct:]    所有的标点字符

[:space:]    所有呈水平或垂直排列的空白字符

[:upper:]    所有的大写字母

[:xdigit:]    所有的十六进制数

[=字符=]    所有和指定字符相等的字符

13  tee 将输入的内容复制到标准输出。

14 paste 会把每个文件以列对列的方式,一列列地加以合并

-d 指定间隔字符

[root@hnlinux lx138.com]# cat a.txt //合并文件的列

123

456

789

1010

10000

111111

000000

5555555

6666666

[root@hnlinux lx138.com]# cat b.txt //合并文件的列

aaa

bbb

bbb

bsss

ssss

weeee

rrrrrr

jjjjjjj

ooooooo

[root@hnlinux lx138.com]# paste a.txt b.txt //合并文件的列

123aaa

456bbb

789bbb

1010bsss

10000ssss

111111weeee

000000rrrrrr

5555555jjjjjjj

6666666ooooooo

[root@hnlinux lx138.com]#

15 diff以逐行的方式,比较文本文件的异同处。所是指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录-b 忽略空格

-B 忽略空白行

-i 忽略大小写

--brief 只报告两个文件是否相同,不报告详细的不同信息

-c 使用上下文输出格式

-d 改变算法,使得diff命令可能找到一个更小的文件差异

-e 产生一个将文件1变成文件2的“ed script”

-r 比较目录时递归比较子目录

-q 不报告差异,只说明两者内容是否有差异

-s 当比较的两个文件相同时报告信息

linux 文本字符串过滤,Linux文本过滤与处理命令相关推荐

  1. linux 文本字符串过滤,linux文本内容过滤命令(grep)

    grep 命令 用途:用于打印输出符合条件字符串所在的行 格式: grep [选项]...  ""查找条件"   目标文件 常用选项: ① -i : 忽略大小写 ② -v ...

  2. linux文本三剑客演讲稿,linux文本三剑客之grep

    grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正 ...

  3. linux文本格式化输出,Linux之文本格式化输出

    文本格式化输出 一.输出格式化命令printf 格式替换符 选项 功能描述 %s 字符串 %f 浮点格式 %c ASCII字符,即显示对应参数的第一个字符 %d,%i 十进制整数 %o 八进制值 %u ...

  4. linux文本去重分割,Linux命令去重统计排序

    利用Linux命令进行文本按行去重并按重复次数排序 linux命令行提供了非常强大的文本处理功能,组合利用linux命令能实现好多强大的功能.本文这里举例说明如何利用Linux命令行进行文本按行去重并 ...

  5. linux sh 字符串split,linux shell之字符串的更具字符分割和删除字符和文本内容的删除以及内容是否匹配成功...

    1  字符串的更具字符分割 1) xargs分割 echo "chenyu*hello*word" | xargs -d "*" chenyu hello wo ...

  6. linux文本工具总结,Linux 文本工具

    各种文本工具来查看.分析.统计文本 grep :文本过滤(模式  pattern)工具 grep[OPTIONS]   PATTERN   FILE --. 查看在/etc/passwd 文件中含有 ...

  7. Linux文本加密方法,Linux命令行文本加密的小技巧

    Linux命令行文本加密的小技巧 我在学习shell攻略时了解到了这个方法,感觉简单有趣,所以现在把它整理出来和大家分享. ROT13文本编码 介绍 ROT13(回转13位,rotateby13pla ...

  8. linux匹配字符串型号,Linux shell脚本:如何匹配子字符串和正则表达式

    如何获得所有具有"client_type = 0"的"clid's"?管道字符"|"分离每个客户的信息.文本,我有仅仅是一个行:Linux ...

  9. linux替换字符串 正则,Linux Shell使用grep、sed 常用正则提取、替换字符串方法

    grep常用于文本搜索.通过自定义的模式(pattern),筛选出使用者需要的文本内容.除了有grep,还有egrep和fgrep.其中egrep = grep –E,而fgrep则是不支持正则表达式 ...

  10. 常用linux文本编辑器nano,linux常用文本編輯器nano/vi/vim

    linux下有很多文本編輯器,其中系統(不管哪個分支)都會自帶nano和vi這兩個最基本的編輯器.vim相當於vi的升級版.這里我們依次來講解這幾個編輯器的用法. 1.nano 直接在命令行中敲入na ...

最新文章

  1. 腾讯张正友:攻克可进化机器人,6个研究趋势与7大技术突破点
  2. 【目标检测】Faster RCNN算法详解
  3. Android中对话框的工具类
  4. -2147467259
  5. 【参数辨识】六关节机械臂动力学参数辨识(上)
  6. HR_Hash Tables: Ransom Note
  7. 简明 Python 教程   第15章 更多Python的内容   上一页 在函数中接收元组和列表 注解...
  8. 【机器学习Machine Learning】资料大全
  9. 数据库mysql菜鸟教程_MySQL数据库菜鸟教程(一)
  10. Spring配置文件头及xsd文件版本浅析
  11. mac 下openOffice服务的安装
  12. Sails.js自动化Api实践与测试
  13. TCP和UDP各自的协议和端口号
  14. python 分词包_python调用hanlp分词包手记
  15. 用户触达方式及用户触达渠道选择
  16. 抖音高贵气质的签名_抖音上很火的个性签名
  17. [网鼎杯 2020 青龙组]AreUSerialz WP
  18. mybatis-pius的使用
  19. 【RoboMaster】从零开始控制RM电机(2)-CAN通信原理及电调通信协议
  20. 2020中国智能制造企业百强榜公布;首旅如家旗下如咖啡首店在上海落地 | 美通企业日报...

热门文章

  1. 策略模式Java实现
  2. 肖邦 《第一钢琴协奏曲》E小调,OP.11 个人赏析
  3. 中科院数学所夏令营试卷
  4. java 按照拼音排序_java List中元素按照拼音排序
  5. 【Unity】脚本实现动态模型切割
  6. java clh队列什么意思_浅谈Java并发 J.U.C之AQS:CLH同步队列
  7. Beyond Part Models: Person Retrieval with Refined Part Pooling 阅读笔记
  8. 【Python实现】微信防撤回
  9. 送一些专属红包封面。
  10. 微信小程序持续集成方案