Linux 命令学习(1): head和tail

版权声明:本文为博主原创文章,未经允许,不得转载。

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: 循环读取

猜你喜欢

转载自www.cnblogs.com/liuyihua1992/p/9589880.html
今日推荐