1.wc:wc命令是一个统计的工具,主要用来显示文件所包含的行、字和字节数。wc命令是word count的缩写。

  命令格式:wc [选项参数] [文件]

  选项参数:

  -c 统计字节数

  -l 统计行数

  -m 统计字符数,这个标志不能与 -c 标志一起使用

  -w 统计字数,一个字被定义为由空白、跳格或换行字符分隔的字符串

  -L 打印最长行的长度

  2.grep:grep是个很强大的命令,用来找到文件中的匹配文本,并且能够接受正则表达式和通配符,同时可以用多个grep命令选项来生成各种格式的输出。grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。grep可用于shell脚本,因为grep通过返回一个状态值来说明搜索的状态,如果模板搜索成功,则返回0,如果搜索不成功,则返回1,如果搜索的文件不存在,则返回2。我们利用这些返回值就可进行一些自动化的文本处理工作。

  命令格式:grep [选项参数] pattern [文件]

  选项参数:

  -c 计算找到 '搜寻字符串'(即pattern) 的次数

  -i 忽略大小写的不同,所以大小写视为相同

  -n 输出行号

  -v 反向选择,打印不匹配的行

  -r 递归搜索

  --color=auto 将找到的关键词部分加上颜色显示(加在命令最后)

  正则表达式与grep命令

  正则表达式是一种符号表示法,被用来识别文本模式。在某种程度上,它们与匹配文件和路径名的 shell 通配符比较相似,但其规模更大。许多命令行工具和大多数的编程语言都支持正则表达式,以此来帮助解决文本操作问题。

  正则表达式元字符由以下字符组成:

  ^ $ . [ ] { } - ? * + ( ) | \

  3.cut:cut命令是一个将文本按列进行切分的小工具,它可以指定分隔每列的定界符。如果一行数据包含多个字段(多列),现在想要提取其中的一列或多列,这是cut命令就可以大显身手了。

  命令格式:cut [选项参数] [文件名]

  选项参数:

  -b 以字节为单位进行分割

  -c 以字符为单位进行分割

  -d 自定义分隔符,默认为制表符

  -f 自定义字段

  --complement 抽取整个文本行,除了那些由 -c 或 -f 选项指定的文本

  4.paste:aste 命令的功能正好与 cut 相反。它会添加一个或多个文本列到文件中,而不是从文件中抽取文本列。它通过读取多个文件,然后把每个文件中的字段整合成单个文本流,输入到标准输出

  命令参数:paste [选项参数] [文件名]

  选项参数:

  -s 将每个文件合并成行而不是按行粘贴

  -d 自定义分隔符,默认为制表符

  5.tr:tr命令常被用来更改字符。我们可以把它看作是一种基于字符的查找和替换操作。换字是一种把字符从一个字母转换为另一个字母的过程。tr从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。tr只能通过stdin(标准输入),而无法通过命令行参数来接受输入。tr是translate(转换)的缩写。

  命令格式:

  tr [选项参数] SET1 SET2   将来自stdin的输入字符从SET1映射到SET2,并将其输出写入stdout(标准输出)。SET1和SET2是字符类或字符集。如果两个字符集的长度不相等,那么SET2会不断重复其最后一个字符,直到长度与SET1相同。如果SET2的长度大于SET1,那么在SET2中超出SET1的那部分字符则全部被忽略。

  选项参数:

  -d 删除匹配SET1的内容,并不作替换

  例1.将输入字符中的大写字母替换为小写字母

  echo ‘THIS IS SHIYANLOU!’ | tr ‘A-Z’ ‘a-z’

  例2.将输入字符中的数字删除

  echo ‘THIS 123 IS S1HIY5ANLOU!’ | tr -d ‘0-9’

  6.sort:同文本文件打交道时,总避不开排序,那是因为对于文本处理任务而言,排序(sort)可以起到不小的作用。sort命令能够帮助我们对文本文件和stdin进行排序操作。通常,它会结合其他命令来生成所需要的输出。

  命令格式:sort [选项参数] [文件]

  选项参数:

  -n 基于字符串的长度来排序,使用此选项允许根据数字值排序,而不是字母值

  -k 指定排序关键字

  -b 默认情况下,对整行进行排序,从每行的第一个字符开始。这个选项导致sort 程序忽略每行开头的空格,从第一个非空白字符开始排序

  -m 只合并多个输入文件

  -r 按相反顺序排序,结果按照降序排列,而不是升序

  -t 自定义分隔符,默认为制表符

  7.uniq:uniq 命令经常和sort命令结合在一起使用。uniq 从标准输入或单个文件名参数接受数据有序列表,默认情况下,从数据列表中删除任何重复行。uniq只能用于排过序的数据输入,因此,uniq要么使用管道,要么将排过序的文件作为输入,并总是以这种方式与sort命令结合起来使用。uniq命令是unique的缩写。

  命令格式:uniq [选项参数] [文件]

  选项参数:

  -c 在每行前加上表示相应行目出现次数的前缀编号

  -d 只输出重复的行

  -u 只显示唯一的行

  -D 显示所有重复的行

  -f 比较时跳过前n列

  -i 在比较的时候不区分大小写

  -s 比较时跳过前n个字符

  -w 对每行第n 个字符以后的内容不作对照

  8.join:join 命令类似于 paste,它会往文件中添加列,但是它使用了独特的方法来完成。一个 join 操作通常与关系型数据库有关联,在关系型数据库中来自多个享有共同关键域的表格的数据结合起来,得到一个期望的结果。这个 join 命令执行相同的操作,它把来自于多个基于共享关键域的文件的数据结合起来。通俗地说,就是将两个文件中指定栏位相同的行连接起来,即按照两个文件中共同拥有的某一列,将对应的行拼接成一行。

  命令格式:join [选项参数] [文件1]  [文件2]

  选项参数:

  -j FIELD 等同于 -1 FIELD -2 FIELD,-j指定一个域作为匹配字段

  -1 FIELD 以file1中FIELD字段进行匹配

  -2 FIELD 以file2中FIELD字段进行匹配

  -t 自定义分隔符,默认为制表符

  9.common:通常比较文本文件的内容很有帮助。对于系统管理员和软件开发者来说,这个尤为重要。一名系统管理员可能,例如,需要拿现有的配置文件与先前的版本做比较,来诊断一个系统错误。同样的,一名程序员经常需要查看程序的修改。comm命令将逐行比较已经排序的两个文件。显示结果包括3列:第1列为只在第一个文件中找到的行,第2列为只在第二个文件中找到的行,第3列为两个文件的共有行。

  注意,comm命令和join、uniq命令一样,只能用于已经排过序的数据

  命令格式:comm [选项参数] 文件1 文件2

  -1 不输出文件1特有的行

  -2 不输出文件2特有的行

  -3 不输出两个文件共有的行

  10.df:linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。df命令是disk free的缩写。

  命令格式:df [选项参数]  [文件]

  选项参数:

  -a 全部文件系统列表

  -h 方便阅读方式显示

  -i 显示inode信息

  -T 文件系统类型

  -t<文件系统类型> 只显示选定文件系统的磁盘信息

  -x<文件系统类型> 不显示选定文件系统的磁盘信息

  11.du:linux中du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看。du命令是disk usage的缩写。

  命令参数:du [选项参数] [文件]

  选项参数:

  -a 显示目录中个别文件的大小。

  -b 显示目录或文件大小时,以byte为单位。

  -c 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。

  -k 以KB(1024bytes)为单位输出。

  -m 以MB为单位输出。

  -s 仅显示总计,只列出最后加总的值。

  -h 以K,M,G为单位,提高信息的可读性

  12.time:time命令常用于测量一个命令的运行时间,包括实际使用时间(real time)、用户态使用时间(the process spent in user mode)、内核态使用时间(the process spent in kernel mode)。实际时间: 从command命令行开始执行到运行终止的时间。用户态使用时间:命令执行完成花费的用户CPU时间,即命令在用户态中执行时间总和。内核态使用时间:命令执行完成花费的系统CPU时间,即命令在核心态中执行时间总和。其中,用户CPU时间和系统CPU时间之和为CPU时间,即命令占用CPU执行的时间总和。实际时间要大于CPU时间,因为Linux是多任务操作系统,往往在执行一条命令时,系统还要处理其它任务

  命令格式:time 命令

Linux部分常用命令学习(二)的更多相关文章

  1. Linux部分常用命令学习(一)

    什么是linux命令? 是一个可执行程序,就像我们所看到的位于目录/usr/bin 中的文件一样. 属于这一类的程序,可以编译成二进制文件,诸如用 C 和 C++语言写成的程序, 也可以是由脚本语言写 ...

  2. Linux GCC常用命令学习

    1简介 GCC 的意思也只是 GNU C Compiler 而已.经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言:它现在还支持 Ada 语言.C++ 语言.Java 语言.Objective ...

  3. Redis 常用命令学习二:字符串类型命令

    1.赋值与取值命令 127.0.0.1:6379> set foo helloredis OK 127.0.0.1:6379> get foo "helloredis" ...

  4. Linux的几个概念,常用命令学习

    Linux的几个概念,常用命令学习---------------------------------设备名装载点// 通过装载点访问设备-------------------------------- ...

  5. 一、Linux概述 二、Linux的安装 三、Linux的常用命令(重点)

    一.Linux概述###<1>操作系统 OS,管理和控制 计算机的 硬件和软件资源的 计算机程序. 最基本的系统软件. 是用户和计算机交互的桥梁,是硬件和软件交互的桥梁. 操作系统:she ...

  6. 一、Linux中的常用命令2 二、Vim编辑器的使用

    一.Linux的常用命令###<1>文件目录操作 13. echo:用于输出字符串,shell编程,echo 1. 输出字符串 : echo str ,shell编程会使用(类似java中 ...

  7. Git版本控制软件结合GitHub从入门到精通常用命令学习手册(转)

    简要参考:http://www.tuicool.com/articles/mEvaq2 http://gitref.org/zh/index.html GIT 学习手册简介 本站为 Git 学习参考手 ...

  8. Linux GDB常用命令一栏

    Linux GDB 常用命令如下: 1.启动和退出gdb (1)启动:gdb ***:显示一段版权说明: (*** 表示可执行程序名) (2)退出:quit.有的时候输入quit后会出现相关提示:类似 ...

  9. mondb 常用命令学习记录

    mondb 常用命令学习记录 一.MongoDB 下载安装 MongoDB官网 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制 ...

随机推荐

  1. SSO 单点登录的实现原理

    单点登录SSO(Single Sign On)说得简单点就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任.单点登录在大型网站里使用得 ...

  2. $python正则表达式系列(3)——正则内置属性

    本文主要总结一下python正则的一些内置属性的用法. 1. 编译标志:flags 首先来看一下re.findall函数的函数原型: import re print('[Output]') print ...

  3. 优秀 H5 案例收集 vol.1(不定期更新)

    一生要历经的三种战斗http://datang.wearewer.com/ 雍正去哪儿http://news.163.com/college/special/craftsman_h5/ 比Emoji更 ...

  4. IntelliJ IDEA 2017 创建SpringBoot项目, 及.jar没有主清单属性解决办法

    1. 创建项目:  File >> New >> Spring Initializr  选好 SDK, 及 依赖包(比如 Web >> Web ) .   需要使用 ...

  5. hive 数据清理--数据去重

    hive> select * from (select *,row_number() over (partition by id) num from t_link) t where t.num= ...

  6. windows 服务器恢复选项恢复

    用户的服务器成了酱紫

  7. Java中的equals学习小结

    Java中的equals是十分重要的,和= =要区别开来,现在小结其主要内容,而且要将 = =和 equals列为重要的对比概念来学习 1.声明格式    public  boolean equals ...

  8. docker 跨主机网络:overlay 简介

    简介 docker 在早前的时候没有考虑跨主机的容器通信,这个特性直到 docker 1.9 才出现.在此之前,如果希望位于不同主机的容器能够通信,一般有几种方法: 使用端口映射:直接把容器的服务端口 ...

  9. 《JavaScript高级程序设计》第6章补充 继承

    基于原型链继承 将父类的实例赋给子类的prototype来实现继承. 原理:父类的实例有父类所有的实例属性和原型方法,将它赋给子类的prototype后,子类的创建的实例就有会__proto__属性指 ...

  10. MongoDB在linux下的启动

    最近公司数据库用到MongoDB,而之前只关注知道它是分布式非关系数据库,数据以文档的形式存储,数据格式是类似json的bson格式.而对于具体用法以及java如何调用并没有过多接触,今天花费一天的时 ...