gpt4 book ai didi

bash - 使用 GNU 拆分的错误数字后缀

转载 作者:行者123 更新时间:2023-11-29 09:18:53 25 4
gpt4 key购买 nike

我有一个大 (1.8GB) 文件,我想将其拆分为最大 100MB 的文件。为此,我使用 GNU split 函数和选项 -d。生成的数字后缀很奇怪。直到 89,一切都很好,但是从 9000 开始,然后是 9001,...等等。有谁知道我为什么会出现这种奇怪的行为?

最佳答案

split 的这种行为可能出乎意料,但它是intended this way .

为了在保持正确的词法顺序的同时创建任意数量的文件,后缀生成器在其第一个位置达到可能的最高数字时扩展数字的数量。

词法顺序是使用 cat 轻松反转拆分所必需的:

split foo bar_
cat bar_* > foo

如果没有维护词汇顺序,新的 foo会被弄乱。

要实现连续数字作为后缀,可以加上-a <n>参数,其中 <n>是位数。

以下命令将生成文件 foo_000通过foo_199 :

seq 20000 | split -d -a 3 -l 100 - foo_

但是,您可以选择足够大的数字来生成您需要的所有后缀,否则 split命令将提前终止并显示错误消息:

split: output file suffixes exhausted

此问题已包含在 GNU coreutils gotchas 中页

关于bash - 使用 GNU 拆分的错误数字后缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42379919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com