12

我有一个大文件,我只对头部的前几兆字节感兴趣。

如何从 unix/linux 中的大文件中提取第一个 x 兆字节并将其放入单独的文件中?

(我知道 split 命令可以将文件拆分成许多部分。使用 bash 脚本我可以删除我不想要的部分。我更喜欢更简单的方法)

4

4 回答 4

17

例如

 dd if=largefile count=6 bs=1M > largefile.6megsonly

拼写假定为1MGNU dd。否则,你可以做

 dd if=largefile count=$((6*1024)) bs=1024 > largefile.6megsonly

这再次假设 bash 风格的算术 评估

于 2012-08-31T19:26:54.813 回答
17

Head 处理二进制文件,语法比 dd 更简洁。

head -c 2M input.file > output.file

如果您想要文件结尾,Tail 的工作方式相同。

于 2017-01-29T15:42:46.540 回答
1

试试命令 dd。您可以使用“man dd”来了解它的主要思想。

于 2012-08-31T19:24:36.857 回答
1

在 Mac (Catalina) 上,headandtail命令似乎不采用大写或小写的 m(mega)和 g(giga)之类的修饰符,但会采用像这样的大整数字节数 50 MB

head -c50000000 inputfile.txt > outputfile.txt
于 2021-07-28T20:58:25.747 回答