head [filename]
head -n 11 [filename] -> First 11 lines
head -c 20 [filename] -> First 20 characters

head默认为显示前10行。

tail [filename]
tail -n 11 [filename] -> Last 11 lines
tail -c 20 [filename] -> Last 20 characters

如果要显示文本的第10-22行可以使用:

 head -n22 | tail -n12                                                                     

tr的用法为:

$ tr [OPTION] SET1 [SET2]

如果SET1 和 SET2都给出,而且OPTION不是-d,那么就是将第一个集合中的元素替换为第二个集合中的元素。

$ tr a-z A-Z
thegeekstuff
THEGEEKSTUFF

如果需要将空格替换为一个tab, 如果存在连续的空格,需要加-s选项,否则默认将每个空格都替换为一个tab:

$ echo "This   is   for testing" | tr -s [:space:] '\t'
This is for testing

如果要删除某个元素,可以使用(如删除所有数字):

$ echo "my username is 432234" | tr -d [:digit:]
my username is

如果需要删除除了数字以外的其他字符,可以使用-c选项:

$ echo "my username is 432234" | tr -cd [:digit:]
432234

如果要将文件的所有行合并为一行,可以使用:

$ tr -s '\n' ' ' < file.txt

sort有几个常用选项:

-n  按数字排序

-r  逆序

-k m,n  按第m-n个field排序

-t  改变文件的分隔符

如要对一个以tab为分隔符的文本按第二个field进行排序,可以使用:

 $ sort -k2,2 -t $'\t' phonebook
Doe, John 555-1234
Fogarty, Suzie 555-2314
Doe, Jane 555-3214
Avery, Cory 555-4132
Smith, Brett 555-4321

这里用$'\t'表示tab

命令uniq的几个常用选项为:

-c 输出每行连续出现的次数

-d 只输出连续出现的行,对于连续出现多次的行只会输出一次

-D  和-d的不同点在于会完整的输出符合条件的行

-u 只输出没有连续出现的行

-i 比较时忽略大小写

-w n 只比较前n个字符

-f n 忽略比较前n个filed

-s n 忽略比较前n个字符

grep常用方法:

如果在一个文件中查找一个字符串,可以用:

grep "literal_string" filename

如果在多个文件中查找指定字符串:

grep "string" FILE_PATTERN

-i选项忽略大小写

在文件中查找多个字符串:

grep "REGEX" filename

-w选项用来只查找指定的WORD,而忽略WORD作为字串的情况

-c 选项用来查看出现次数

-v选项用来输出没有出现指定字符串的行

-e 选项可以用来指定多个字符串:

$ grep -v -e "a" -e "b" -e "c" test-file.txt

-l(小写的L)选项用来输出含有指定字符串的文件名:

$ grep -l this demo_*
demo_file
demo_file1

另外,还有-A,-B,-C等选项。

Linux 命令之head, tail, tr, sort, uniq, grep的更多相关文章

  1. 文件上传下载,命令之wget / curl / which / sort / uniq / cut / wc /tr /sed

    目录 命令 1.文件的上传下载 2.从外网下载文件wget 3.curl文件下载 4.查找命令which 5.字符处理命令-排序sort 6.字符处理-去重uniq 7.字符处理-截取cut 8.字符 ...

  2. linux命令--cp、tail、cd、mv、history、cd

    day1 cd命令 cd ../定位至上级目录 cd ./定位到当前目录 cd ~ 定位当前用户目录 cd / 定位系统根目录 cd - 返回进入此目录之前所在的目录 day2 mv命令: mv时,若 ...

  3. linux命令学习笔记(39):grep 命令

    Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来. grep全称是Global Regular Expression Print,表示全局正则表 ...

  4. 每天一个linux命令(1):tail 命令

    tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新, ...

  5. linux命令详解:tr命令

    转:http://www.cnblogs.com/lwgdream/archive/2013/11/05/3407809.html 前言 通过tr命令来转化数据,比如大小写的转换:用转换成另外一种字符 ...

  6. Linux基础第六课——grep|awk|sort|uniq

    管道符 | 前面的输出作为后面的输入 grep 可以理解为正则表达式 grep [参数] 文件名 -c 打印符合要求的行数 -v 打印不符合要求的行 -n 在输出符合要求的行的同时连同行号一起输出 - ...

  7. linux命令学习head和tail

    linux命令head和tail是一对:more和less是一对. head和tail https://www.2cto.com/os/201507/414753.html 一个头,一个尾. tail ...

  8. [笔记]Linux命令行大全

    date 显示当前时间和日期 cal 显示当前月份的日历 df 查看磁盘剩余空间的数量 free 显示空闲内存的数量 pwd 打印当前工作目录 cd 切换目录 ls 列出文件夹内容 绝对路径:开始于根 ...

  9. Linux命令总结【待续】

    1.打包:  tar -czf small.tar.gz small(目录名)  ;压缩并打包目录 2.解包: tar zxvf 文件名 date -s 2015 2 12 修改时间 cp name ...

随机推荐

  1. docker中国区镜像加速

    [root@syzyy ~]# vim /etc/docker/daemon.json { "registry-mirros":[ "https://registry.d ...

  2. js 实现 map 工具类

    /* * MAP对象,实现MAP功能 * * 接口: * size() 获取MAP元素个数 * isEmpty() 判断MAP是否为空 * clear() 删除MAP所有元素 * put(key, v ...

  3. 尚学python课程---13、python基础语法

    尚学python课程---13.python基础语法 一.总结 一句话总结: legend2系统使我能够快速掌握一门语法,特别有用 pass 语句:空语句:是为了保持程序结构的完整性  :作用:比如: ...

  4. R软件导入数据_r语言怎么导入数据_R软件导入数据

    R软件导入数据_r语言怎么导入数据_R软件导入数据 R软件导入数据 1.Rcmdr安装包导入数据: 1.安装Rcmdr包,输入: install.packages("Rcmdr") ...

  5. day 64 Django基础十之Form和ModelForm组件

    Django基础十之Form和ModelForm组件   本节目录 一 Form介绍 二 Form常用字段和插件 三 From所有内置字段 四 字段校验 五 Hook钩子方法 六 进阶补充 七 Mod ...

  6. nginx下Thinkphp 隐藏index.php

    thinkphp config配置: 'URL_MODEL' => '2', //URL模式 nginx rewrite配置: location / { if (!-e $request_fil ...

  7. Python Flask高级编程之从0到1开发《鱼书》精品项目 ✍✍✍

    Python Flask高级编程之从0到1开发<鱼书>精品项目  一 .安装环境我们使用 flask web框架,并用 sqlalchemy来做数据库映射,并使用 migrate做数据迁移 ...

  8. thinkone无法重新创建数据库的问题 newsy

    错误描述: 无法加载数据库驱动: Think\Db\Driver\    前后装了OneThink1.0和OneThink1.1都没成功,都是卡在了安装页面的三个step,读者们你们也遇到一样的情况吗 ...

  9. 安装zabbix需要php的两个模块php-bcmath和php-mbstring(转)

    安装zabbix需要php的两个模块php-bcmath和php-mbstring 原创 Linux操作系统 作者:甲骨文技术支持 时间:2018-02-24 18:35:24  1472  0 1. ...

  10. 常见的HTTP状态码详细解析

    http状态码分为五类 : 1XX 信息 服务器收到请求,需要请求者继续操作 2XX 成功 请求被成功接手并返回给请求者 3XX 重定向 需要进一步操作才能完成请求 4XX 客户端错误 请求包含语法错 ...