1 文件浏览(简单回顾)

1 cat 查看文件的内容

2 more 以翻页的形式查看,但是只能向下翻页

3 less 以翻页的形式查看,但是能够支持向上和向下翻页

4 head 默认是查看前10行,但是我们指定查看的行数

5 tail 默认是查看后10行,但是我们可以指定查看的行数

2 基于关键字的搜索

假设我在家目录下创建了一个tmp.cpp

1 命令grep是基于关键字进行搜索

2 单个关键字搜索:  grep 关键字 文件名

比如我在tmp.cpp 里面搜索Linux

3 多关键字搜索: grep -E "关键字|关键字..." 文件名

比如我在tmp.cpp里面同时搜索哦含有Linux 和test

4 grep的其它参数

1 -i 是忽略大小写

2 -n 是显示结果所在的行

3 -v 是输出不带关键字的行(等于取反)

4 -Ax是输出的时候包含结果所在行之后x行

5 -Bx是输出的时候包含结果所在行之前x行

3 基于列的处理

1 cut命令是用于基于列的文本处理

2 cut -dc -fx 文件名

c是要分割的字符(默认是TAB),x是显示第几列

比如我以":"作为分割符 查看/etc/passwad的第1列

2 我们也可以利用管道来进行cut

比如我先利用grep命令在/etc/passwad中搜索出含有chen关键字的文本结果,然后利用管道去cut出用:作为分割符并且显示第六列

4 文本统计

1 wc命令用来统计文本的信息,默认输出几行,几个单词,几个字节,文件名

我们还是利用上面的tmp.cpp

2 wc还有一些参数

-l 只统计行数

-w 只统计单词

-c 只统计字节数

-m 只统计字符数

5 文本排序

1 命令sort是用来对文本进行排序 sort 文本名

2 sort的常用的参数

-r 进行倒序排序

-n 基于数字进行排序

-r 忽略大小写

-u 删除重复行

-tc 使用c作为分割符分割为列进行排序

-kx 当基于分割符分割为列进行排序时,指定x列来排序

3 删除重复行

sort -u 文件名

uniq 文件名 用来删除相邻的重复行

6 文本的比较

1 命令diff用来比较两个文本文件

diff 文件1 文件2

比如我们比较家目录下的tmp.cpp 和 tmp2.cpp

2 diff的一些参数

-i 忽略大小写

-b 忽略空格的数量

-u 统一的显示比较的信息,用以生成patch文件,一般可以用来作为补丁,实际上就是把比较信息重定向到patch文件

7 文本处理

1 删除某个关键字

tr -d 关键字 < 文件名

2 转换大小写

tr 'a-z' 'A-Z' < 文件名

7 文本的搜索替换

命令sed用来实现文本的替换功能,其内部实现的是一个正则表达式

1 sed 's/linux/unix/g' 文件名

那么这个命令就是把文本里面的linux替换为unix,g的意思是如果一行有多个linux则全部替换

2 sed '1,50s/linux/unix/g' 文件名

那么这个命令就是把1~50行里面的linux替换为unix,g的意思是如果一行有多个linux则全部替换

3 sed -e 's/linux/unix/g' -e 's/haha/fuck/g' 文件名

那么这个命令就是实现多个同时替换,把所有linux替换为unix,haha替换为fuck

4 sed -f sededit 文件名

这个命令就是说如果我们很厂用到某个命令,那么我们把这个命令写道sededit文本里面,那么每次调用-f sededit就比较方便

Linux基本配置和管理 3 ---- Linux命令行文本处理工具的更多相关文章

  1. Linux基本配置和管理 2 ---- Linux多命令协作----管道及重定向

    1 管道和重定向 1 在Linux中大多数命令都很简单,很少出现复杂的命令,每个命令只是实现一个简单的功能,我们可以通过组合不同的命令来实现复杂的功能 2 在Linux中几乎所有的命令返回的数据都是纯 ...

  2. Linux基本配置和管理 4 ---- Linux系统启动详解

    1 系统启动的流程 BIOS -> MBR+boot code -> 执行引导程序: GRUB -> 加载内核 -> 执行init -> 运行runlevel 2 启动详 ...

  3. Linux网络——配置网络之iproute家族命令

    Linux网络——配置网络之iproute家族命令 摘要:本文主要学习了iproute家族用来配置网络的命令. ip命令 ip命令用于查看和管理IP地址.接口.路由.隧道等.用来取代ifconfig命 ...

  4. Linux网络——配置网络之ifconfig家族命令

    Linux网络——配置网络之ifconfig家族命令 摘要:本文主要学习了ifconfig家族用来配置网络的命令. ifconfig命令 ifconfig命令用来显示或设置网络接口信息,设置只是临时生 ...

  5. gcp – 源于CP的高级命令行文件拷贝工具

    作者:linux 出处:http://linux.cn/thread/11868/1/1/ gcp – 源于CP的高级命令行文件拷贝工具 几周前,我们讨论了高级拷贝(修改于cp命令,让其可以显示复制进 ...

  6. Linux文件和目录管理常用重要命令

    一.目录与路径 1.相对路径与绝对路径 因为我们在Linux系统中,常常要涉及到目录的切换,所以我们必须要了解 "路径" 以及 "相对路径" 与 "绝 ...

  7. Linux防火墙配置与管理(16)

    防火墙指的是一个由软件和硬件设备组合而成.在内部网和外部网之间.专用网与公共网之间的边界上构造的保护屏障.是一种获取安全性方法的形象说法,它是一种计算机硬件和软件的结合,使Internet与Intra ...

  8. Linux命令行文本处理工具

    关键字搜索: grep  关键字  指定文件 -i   搜索时忽略大小写 -n  显示结果所在行 -v  显示不包含关键字的行 基于列的文本处理: cut -d: -f1 /etc/passwd -d ...

  9. Linux基本配置和管理 1---- Linux网络基本配置

    1 IP编址 1 IP编址是一个双层的编址方案,一个IP编址标识一个主机(或一个网卡接口) 2 现在应用最为广泛的是ipv4,已经开始逐步香ipv6切换 3 ipv4地址为32位,ipv6为128位 ...

随机推荐

  1. PHP-HTML重要知识点笔记

    1.用frameset.frame和iframe还实现多窗口 2.在图片上利用映射距离usemap来实现按钮跳转.------第8尾集 3.表单必须要有name和value,因为抓包的时候,可发现必须 ...

  2. img超出div width时, jQuery动态改变图片显示大小

    参考: 1. http://blog.csdn.net/roman_yu/article/details/6641911 2. http://www.cnblogs.com/zyzlywq/archi ...

  3. Python开发【第一章】:Python简介和入门

    Python简介 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承. ...

  4. python模块之socket

    43.python模块之socket:       Python在网络通讯方面功能强大,学习一下Socket通讯的基本方式 UDP通讯: Server: import socket port=8081 ...

  5. C程序设计语言练习题1-16

    练习1-16 修改打印最长文本行的程序的主程序main,使之可以打印任意长度的输入行的长度,并尽可能多地打印文本. 代码如下: #include <stdio.h> // 包含标准库的信息 ...

  6. python 单元测试

    http://blog.csdn.net/five3/article/details/7104466

  7. [BZOJ 1048] [HAOI2007] 分割矩阵 【记忆化搜索】

    题目链接:BZOJ - 1048 题目分析 感觉这种分割矩阵之类的题目很多都是这样子的. 方差中用到的平均数是可以直接算出来的,然后记忆化搜索 Solve(x, xx, y, yy, k) 表示横坐标 ...

  8. Asynchronous

    http://sporto.github.io/blog/2012/12/09/callbacks-listeners-promises/ http://www.cnblogs.com/liuning ...

  9. 在 C++Builder 工程里使用 Visual C++ DLL(3个工具) good

    译者序: 第一次读这篇文章是在 2001 年 10 月,帮我解决了一点小问题.本来不好意思翻译,因为英语水平实在太差.最近发现不少网友在问在 C++Builder 的工程里调用 Visual C++  ...

  10. c# 基础连接已经关闭: 连接被意外关闭,错误的解决

    原文:c# 基础连接已经关闭: 连接被意外关闭,错误的解决 调试一个使用HttpWebRequest模拟提交表单的程序的时候频繁出现上述错误提示,google了一下发现了几个解决方案.1.在appli ...