我想将文件分成64MB的块。我想找出没有。零件通过shell脚本。我的脚本给出以下错误: 第3行:134M:基数值太大(错误标记为“134M”) 谁能帮我。提前致谢
答案 0 :(得分:2)
使用split -b 64m yourfile
。它会将您的文件拆分为名为xa,xb,xc等的块。
根据您的评论进行修改:
您可以取文件大小和64mb的商的上限,这将为您提供最大文件大小为64mb时所需的文件数。最后一个文件可能小于64mb。
一个班轮可能看起来像:
stat -f %z yourfile | perl -pi -e 'use POSIX; $_ = ceil $_ / (64 * 1024 * 1024);'
答案 1 :(得分:2)
file=foo
chunks=$(echo "$(wc -c < "$file") / (64*10^6)" | bc -l)
或
file=foo
chunks=$(echo "$(wc -c < "$file") / (2^26)" | bc -l)
取决于64MB对您来说意味着64000000还是67108864。如果你想要一个截断的整数,请省略-l。