Linux 之 split 切分大文件 cat 合并多个小文件
Posted 闭关苦炼内功
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 之 split 切分大文件 cat 合并多个小文件相关的知识,希望对你有一定的参考价值。
需求:
B数据中心上线,需要做内网私服(单机yum源repo私服)
搞个rhel7.9 iso
分析:
官网下载太慢,某度网盘下载也是慢
突然想起来,A数据中心有一台服务器上边有iso,奈何传输文件限值大小不能超过2G
rhel7.9的iso大小4.3G
一勤天下无难事,求人不如求己,还得靠自己
split 切分文件干起来
切分完以后,有3个小文件,下载到PC机,然后再上传到B数据中心一台服务器上
然后再做小文件合并
开干
A数据中心 服务器1
[root@localhost /]# tar -zcvf rhel-server-7.9-x86_64-dvd.iso.tar.gz rhel-server-7.9-x86_64-dvd.iso
rhel-server-7.9-x86_64-dvd.iso
[root@localhost /]#
[root@localhost /]# ls -lh rhel*
总用量 8.3G
-rw-r--r-- 1 root root 4.3G 12月 28 2021 rhel-server-7.9-x86_64-dvd.iso
-rw-r--r-- 1 root root 4.0G 11月 14 16:06 rhel-server-7.9-x86_64-dvd.iso.tar.gz
[root@localhost /]#
[root@localhost /]# split -b 1500M rhel-server-7.9-x86_64-dvd.iso.tar.gz "rhel7.9.tar.gz.part"
[root@localhost /]# ls -lh rhel*
总用量 13G
-rw-r--r-- 1 root root 1.5G 11月 14 16:12 rhel7.9.tar.gz.partaa
-rw-r--r-- 1 root root 1.5G 11月 14 16:12 rhel7.9.tar.gz.partab
-rw-r--r-- 1 root root 1.1G 11月 14 16:12 rhel7.9.tar.gz.partac
-rw-r--r-- 1 root root 4.3G 12月 28 2021 rhel-server-7.9-x86_64-dvd.iso
-rw-r--r-- 1 root root 4.0G 11月 14 16:06 rhel-server-7.9-x86_64-dvd.iso.tar.gz
[root@localhost /]#
B数据中心 服务器2
[root@localhost ~]# ls -lh
total 64M
-rw-------. 1 root root 2.2K Sep 26 15:39 anaconda-ks.cfg
-rw-r--r--. 1 root root 53M Nov 14 16:21 rhel7.9.tar.gz.partaa
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# watch -n1 'ls -lh'
[root@localhost ~]#
[root@localhost ~]# ls -lh
total 4.0G
-rw-------. 1 root root 2.2K Sep 26 15:39 anaconda-ks.cfg
-rw-r--r--. 1 root root 1.5G Nov 14 16:22 rhel7.9.tar.gz.partaa
-rw-r--r--. 1 root root 1.5G Nov 14 16:23 rhel7.9.tar.gz.partab
-rw-r--r--. 1 root root 1.1G Nov 14 16:24 rhel7.9.tar.gz.partac
[root@localhost ~]#
[root@localhost ~]# cat rhel7.9.tar.gz.parta* > rhel7.9.tar.gz
[root@localhost ~]#
[root@localhost ~]# ls -lh
total 8.0G
-rw-------. 1 root root 2.2K Sep 26 15:39 anaconda-ks.cfg
-rw-r--r--. 1 root root 4.0G Nov 14 16:26 rhel7.9.tar.gz
-rw-r--r--. 1 root root 1.5G Nov 14 16:22 rhel7.9.tar.gz.partaa
-rw-r--r--. 1 root root 1.5G Nov 14 16:23 rhel7.9.tar.gz.partab
-rw-r--r--. 1 root root 1.1G Nov 14 16:24 rhel7.9.tar.gz.partac
[root@localhost ~]#
[root@localhost ~]# tar -zxf rhel7.9.tar.gz
[root@localhost ~]#
[root@localhost ~]# ls -lh
total 13G
-rw-------. 1 root root 2.2K Sep 26 15:39 anaconda-ks.cfg
-rw-r--r--. 1 root root 4.0G Nov 14 16:26 rhel7.9.tar.gz
-rw-r--r--. 1 root root 1.5G Nov 14 16:22 rhel7.9.tar.gz.partaa
-rw-r--r--. 1 root root 1.5G Nov 14 16:23 rhel7.9.tar.gz.partab
-rw-r--r--. 1 root root 1.1G Nov 14 16:24 rhel7.9.tar.gz.partac
-rw-r--r--. 1 root root 4.3G Dec 28 2021 rhel-server-7.9-x86_64-dvd.iso
[root@localhost ~]#
[root@localhost ~]#
其实就是两条命令
-
拆分大文件
split -b 1500M rhel-server-7.9-x86_64-dvd.iso.tar.gz "rhel7.9.tar.gz.part"
-
合并小文件
cat rhel7.9.tar.gz.parta* > rhel7.9.tar.gz
打完收工!
2022-11-16 04:02
这加班加的,马上天亮了
各位看官看到以后点赞支持下呗!
以上是关于Linux 之 split 切分大文件 cat 合并多个小文件的主要内容,如果未能解决你的问题,请参考以下文章