当前位置:  开发笔记 > 运维 > 正文

Linux命令(如cat)读取指定数量的字符

如何解决《Linux命令(如cat)读取指定数量的字符》经验,为你挑选了3个好方法。

是否有类似catLinux 的命令可以从文件中返回指定数量的字符?

例如,我有一个文本文件,如:

Hello world
this is the second line
this is the third line

我想要的东西会返回前5个字符,这将是"你好".

谢谢



1> Dan..:

head 也有效:

head -c 100 file  # returns the first 100 bytes in the file

..将提取前100个字节并返回它们.

使用head这个的好处是tail匹配的语法:

tail -c 100 file  # returns the last 100 bytes in the file



2> 小智..:

您可以使用dd提取任意块的字节.

例如,

dd skip=1234 count=5 bs=1

将字节1235到1239从其输入复制到其输出,并丢弃其余部分.

要从标准输入中获取前五个字节,请执行以下操作:

dd count=5 bs=1

请注意,如果要指定输入文件名,则dd具有旧式参数解析,因此您可以执行以下操作:

dd count=5 bs=1 if=filename

还要注意dd详细宣布它做了什么,所以为了抛弃它,做:

dd count=5 bs=1 2>&-

要么

dd count=5 bs=1 2>/dev/null


我建议一般不要使用这个解决方案,因为`dd bs = 1`强制dd一次读写一个字符,当count很大时,它比`head`要慢得多.但是,对于count = 5,它并不明显.
那么"dd count = 1 bs = 5"怎么样?这将一次读取五个字节.不过,头脑可能是一个更清晰的解决方案.

3> gimel..:

头:

名称

head - 输出文件的第一部分

概要

[ 选项 ] ... [ 文件 ] ...

描述

将每个FILE的前10行打印到标准输出.如果有多个FILE,则每个文件前面都有一个标题,表示文件名.如果没有FILE,或者FILE是 - ,则读取标准输入.

对于空头期权而言,长期期权的强制性论据也是强制性的.
-c, - times = [ - ] N 打印每个文件的前N个字节; 使用前导' - ',打印除了每个文件的最后N个字节之外的所有字节


] ... [
] ...
推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有