head和tail是一组想对应的命令,默认分别显示文件的开头和末尾10行记录。

head

head 命令可以将一段文本的开头一部分输出到标准输出。

head命令既可以处理文本文件也可以处理标准输入。

基本应用

处理文本文件:

head input.txt

当有多个文件输入时,head会顺序处理并输出:

head input1.txt input2.txt

处理标准输入:

ls | head

当没有其他参数时,head默认输出前10行,当然,head有各种参数。

可选参数

-n: 输出的行数

例如,如果想输出前25行,下面三个命令是等价的:

head -n25 input.txt
head -n     25 input.txt
head -25 input.txt

可以看出,-n后面有没有空格都可以,有几个空格都可以,甚至-n本身都可以省略。

-n 后面也可以跟负数,例如:

head -n -5 input.txt

此命令表示输出input.txt除了后5行以外的全部内容。

-c: 输出的字节数

head -c 5 input.txt    # 5 bytes 
head -c -5b input.txt    # 5*512
head -c5k input.txt    # 5*1024
head -c 5m input.txt    #5*1048576

-c 没有默认值,所以后面必须跟数值。可以是负数,表示输出除了后N个字节以外的内容。

tail

将一段文本的结尾一部分输出到标准输出,也就是从某个节点位置开始输出。

基本用法

tail的参数基本用法和head完全一样,在此不作赘述。

只有一点需要注意,如果想表达从第N(比如25)行开始输出,要使用加号:

tail -n +25 input.txt

tail +5c input.txt    #从第5个字节开始打印

常见用法

tail 有一个常见的用法:用来实时查看一个不断更新的log file。例如后台有一个logfile.txt不断更新,我们可以用下面的命令将更新内容打印在屏幕上:

tai -f logfile.txt

-f: 循环读取

linux shell head tail 用法简介相关推荐

  1. shell实例第20讲:linux shell date的用法

    linux shell date的用法 转自:https://www.cnblogs.com/faberbeta/p/linux-shell002.html 1.date中的参数 %% 一个文字的 % ...

  2. Linux Shell nohup命令用法(内含代码演示)

    一.Linux Shell nohup命令用法 在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 & 在程序结尾来让程序自动运行.比如我们要运行mysql在后台: ...

  3. linux until工具,Linux shell之until用法

    Linux shell之until用法 #!/bin/bash #until用法,显示变量值从0到99 varl=0                              #定义变量 echo & ...

  4. Linux shell test命令用法详解

    test命令用法.功能:检查文件和比较值 1)判断表达式 if test (表达式为真) if test !表达式为假 test 表达式1 –a 表达式2 两个表达式都为真 test 表达式1 –o ...

  5. Linux Shell nohup命令用法

    在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 & 在程序结尾来让程序自动运行.比如我们要运行mysql在后台: /usr/local/mysql/bin/my ...

  6. linux shell之case用法

    #!/bin/bash                    # #case用法,用变量来匹配某值,如果匹配成功则执行它下面的命令,直到 ::为止 a=20                       ...

  7. linux shell json操作命令 jq 简介

    jq命令允许直接在命令行下对JSON进行操作,包括分片.过滤.转换等 ,jq是用C编写,没有运行时依赖,所以几乎可以运行在任何系统上.预编译的二进制文件可以直接在Linux.OS X和windows系 ...

  8. linux shell之until用法

    #!/bin/bash #until用法,显示变量值从0到99 varl=0                              #定义变量 echo "test until loop ...

  9. linux shell之cut用法

    http://blog.itpub.net/27027903/viewspace-735904/ cut是一个选取命令,就是将一段数据经过分析,取出我们想要的.一般来说,选取信息通常是针对" ...

最新文章

  1. android 4.0(ICS)源码下载方法
  2. 有外键约束的子表插入数据时出现的错误
  3. [watevrCTF 2019]Repyc [NPUCTF2020]BasicASM
  4. Apache Sentry架构介绍
  5. 传送门(最短路树+可并堆)
  6. mybatis crud_MyBatis教程– CRUD操作和映射关系–第1部分
  7. 杭电多校HDU 6599 I Love Palindrome String (回文树)题解
  8. 一起来学Spring Cloud | 第一章 :如何搭建一个多模块的springcloud项目
  9. ubuntu12 环境下编译freerdp
  10. bbsmax mysql_MySQL中自己不太常用的命令
  11. freeswitch通话记录mysql_freeswitch电话计费详单入库方法
  12. built a JNCIS LAB系列:Chapter 7 MPLS
  13. 原生/RN/Flutter选型
  14. 华为rh2288v2服务器系统,扩展能力强 华为RH2288H V2服务器解析
  15. “发烧请假”是面照妖镜,聊聊我以前遇到的奇葩领导
  16. unl导入导出数据库
  17. 鼠标光标一直在闪烁_便携有个性,功能强大,可配戴在手指上的键盘鼠标
  18. 密码是6-16位字母加数字的正则表达式和验证手机号码的正则表达式
  19. win7使用U盘重装系统
  20. 基本约瑟夫环问题详解

热门文章

  1. Tungsten Fabric SDN — SmartNIC vRouter 软件架构设计
  2. 架构师之路 — 分布式系统 — 分布式一致性难题
  3. Linux Kernel TCP/IP Stack — L1 Layer — NIC bonding
  4. ETSI GS MEC 014,UE 标识 API
  5. MySql 5.7 新特性概览
  6. LaTeX技巧:如何高效地将LaTeX代码转为Word公式
  7. Spring抛出异常_自动装配
  8. Java GC系列(3):垃圾回收器种类
  9. [leetcode] 数字游戏
  10. OSG的HUD抬头文字显示