本文出自   http://blog.csdn.net/shuangde800

---------------------------------------------------------------------------------

基于关键字搜索


命令grep用以基于关键字搜索文本

$ grep 'shuangde'  /etc/passwd
$ find  / -user  shuangde | grep Video

-i     在搜索的时候忽略大小写
-n    显示结果所在行数
-v    输出不带关键字的行
-Ax  在输出的时候包含结果所在行之后的指定行数  
-Bx  在输出的时候包含结果所在行之前的指定行数




基于列处理文本


命令cut用以基于列处理文本内容
$ cut  -d :  -f  1 /etc/passwd   用冒号分隔并显示passwd文件的第一列(如果显示多列: -f 1,2,3 )
$ grep  shuangde  /etc/passwd  |  cut  -d:  -f3


-d  指定分隔符(默认是TAB)
-f   指定输出的列号
-c  基于字符进行分割

$ cut  -c2-6  /etc/passwd
显示第2~6个字符



文本统计


命令wc(word  count)用以统计文本信息
$ wc  file   输出行数,单词数,字节数

-l   (lines)   : 只统计行数
-w (words) : 只统计单词数
-c  (bytes):只统计字节数
-m (chars):只统计字符数




文本排序


sort命令:用以对文本的行内容进行排序(只支持英文和数字)
$  sort  filename 

-r    倒序排序
-n   基于数字进行排序
-f    忽略大小写
-u   删除重复行
-t c  使用c作为分隔符分割为列进行排序
-k x  当进行基于指定字符分割为列的排序时,指定基于那个列排序


删除重复行


$ sort  -u  可以删除重复行
$ uniq  用以删除相邻的
重复行


文本比较

diff 命令:一行行地比较两个文本文件的差异
$  diff   file1  file2
-i   忽略大小写
-b  忽略空格数量的改变
-u  统一显示比较信息(一般用以生成patch文件) 
$ diff  -u  file1  file2  >  final.patch


拼写检查


aspell 命令: 显示检查英文拼写
$  aspell  check  file    检查文件file内的单词拼写,可以进行改正
$  aspell list  file   把文件file内错误单词,并显示出来



处理文本内容


tr 命令 : 改变或者删除文本内容

删除关键字
$  tr  -d  'TMD'  < filename    
把T,M,D三个字母都删掉

转换大小写
$  tr  'a-z'  'A-Z'  < filename



搜索替换


sed命令: 用以搜索并替换文本(stream editor for filtering and transforming text.)

$ sed  's/linux/unix/g'   file
$ sed  '1,50s/linux/unix/g'  file
$ sed  -e  's/linux/unix/g'  -e  's/hehe/haha/g'  file    可以指定多个匹配模式
$ sed  -f  sededit  file





Linux入门基础 #10:命令行文本处理工具的更多相关文章

  1. Linux入门——基础系统设置命令

    以下为centos7实验环境 1.网卡管理工具命令——nmcli 参考:http://www.iteye.com/topic/1141839 2.主机名称设置——hostnamectl [root@s ...

  2. Linux入门基础篇

    Linux入门基础篇 Linux诞生 Linux发行版本说明 Linux官方网站 Linux内核官方网站 比较有名的Linux发行版 虚拟机(Virtual Machine),一个虚拟的系统,安装在系 ...

  3. Linux入门基础之一

    Linux 入门基础 一.Linux 系统安装 安装方法网上很多,请自行百度 二.Linux 基本操作 2.1.GNOME图形界面基本操作 操作类似于Windows系统操作 打开每一个文件夹都会打开一 ...

  4. Linux入门基础之 下

    八.Linux 管道.重定向及文本处理 8.1.Linux 多命令协作:管道及重定向 8.1.1 开源文化 开源文化的核心理念之一就是不要重复发明轮子,很多的开源软件都是现有软件.代码.功能的重新组合 ...

  5. Linux入门_2-基础命令

    Linux入门-基础命令 目录 日期命令date 修改时区 日历命令cal 关机启动命令halt,reboot,poweroff whoami.who.who am i.w screen ...

  6. Linux入门基础教程之Linux下软件安装

    Linux入门基础教程之Linux下软件安装 一.在线安装: sudo apt-get install 即可安装 如果在安装完后无法用Tab键补全命令,可以执行: source ~/.zshrc AP ...

  7. linux入门基础——linux软件管理RPM

    由于linux入门基础是基于CentOS解说的,讲的是CentOS上的软件包管理.ubuntu的软件包管理有这些:ubuntu软件包管理,包管理指南,ubuntu软件包管理. linux软件管理:RP ...

  8. Linux入门基础知识

    注:内容系兄弟连Linux教程(百度传课:史上最牛的Linux视频教程)的学习笔记. Linux入门基础知识 1. Unix和Linux发展历史 二者就像父子关系,当然Unix是老爹.1965年,MI ...

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

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

随机推荐

  1. ORA-01093: ALTER DATABASE CLOSE only permitted with no sessions connected解决方法

    在进行物理主备库角色转换的时候遇到ORA-01093错误 SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY; ALTER ...

  2. Javascript面向对象研究心得

    这段时间正好公司项目须要,须要改动fullcalendar日历插件,有机会深入插件源代码.正好利用这个机会,我也大致学习了下面JS的面向对象编程,感觉收获还是比較多的. 所以写了以下这篇文章希望跟大家 ...

  3. android模拟器 一个错误:X Error of failed request: BadRequest (invalid request code or no such operation)

    最近ubuntu12.04学习python,python2.7 python3.2所不同的是还是蛮大的.学习思考的新 升级后 结果显示 输入方法不显示   update-manager 和  add- ...

  4. Collections在sort()简单分析法源

    Collections的sort方法代码: public static <T> void sort(List<T> list, Comparator<? super T& ...

  5. javascript每日一练(三)——DOM一

    一.Dom基础 childNodes(有兼容问题),children nodeType getAttribute() firstChild,lastChild,previousSilbing,next ...

  6. [linux]linux命令学习-netstat

    linux非常多服务都与网络相关.当服务调不通或者是启动port被占用,或者是又是被防火墙挡住的时候,就须要查询网络相关的问题,netstat命令之前仅仅会用一两个參数这里.好好学习一番. 经常使用的 ...

  7. C++汉字转拼音(转)

    #include<iostream> #include<string> using namespace std; string findLetter(int nCode); s ...

  8. Delphi中拖动无边框窗口的5种方法

    1.MouseMove事件中加入: // ReleaseCapture;// Perform(WM_SYSCOMMAND, $F017 , 0); 2.MouseDown事件中加入: // POSTM ...

  9. 根据input 标签取value属性的值

    jrhmpt01:/root/lwp/0526# cat a1.pl use LWP::UserAgent; use DBI; use POSIX; use Data::Dumper; use HTM ...

  10. eclipse for mac 快捷键

    Eclipse for Mac 常用快捷键 为了提高开发效率,Eclipse 为我们提供了许多快捷键,它们能够帮助我们快速和方便的完成一些繁琐的操作. 关于 Eclipse for Windows 的 ...