假设磁盘只有 100 G, 有一个巨大的 TXT/Log 文件占了 95%的磁盘容量.
需求是在不使用另一块磁盘的情况下,把这个文件拆成 8 个小文件. 说白了就是原地拆分。
请问有什么工具、口令可以使用?
需求是在不使用另一块磁盘的情况下,把这个文件拆成 8 个小文件. 说白了就是原地拆分。
请问有什么工具、口令可以使用?
|
1
|
|
eason1874Aug 19, 2021
2
写一个循环,边写边截断,比如用 tail 和 truncate
|
|
ho121Aug 19, 2021 via Android
3
先建一个内存盘?
|
|
liuguangxuanAug 19, 2021 via Android
4
Linux 下有 split 命令,不知道能不能满足楼主的需求。
|
|
5
这种占满硬盘没法读写的场景太稀有了, 别去琢磨了
临时加一个(或者 ssh 挂在一个远程的硬盘), 把日志压缩备份, 然后开一个 logrotate , 天天切割日志就完事了... |
|
desAug 19, 2021 via iPhone
6
原地切割是为了下载吧?
那你可以试试用 dd 加 gzip 传输回来 |
|
ch2Aug 19, 2021
7
添加一个 10G 的内存盘
|
|
9
利用剩余 5%空间中的 4%
复制最后 4% -> trunc 最后 4% -> 复制最后 4%-> trunc.... 最后应该是 20 多个文件+5%的剩余空间。再按需合并就好了 |