Python 从拆分命令到另一个函数的管道输出
我目前正在使用一个脚本/命令行,该脚本/命令行允许我执行以下操作:Python 从拆分命令到另一个函数的管道输出,python,bash,split,pipe,Python,Bash,Split,Pipe,我目前正在使用一个脚本/命令行,该脚本/命令行允许我执行以下操作: 存档并压缩所需文件夹(tar) 将上一个命令/函数的输出拆分为100MB的块(拆分) 加密每个数据块(gpg) 我已经成功地编写了一个python脚本,与Linux terminal/bash交互并逐个执行所需的命令,但是我正在处理相当大的文件夹大小(100GB+),这意味着按顺序执行所有这些操作至少需要100GB的存档、100GB的拆分和100GB的加密 我曾考虑使用RAM磁盘在内存中执行所需的操作,但对于文件夹大小来说,这似
tar{command with options}| split{command with options}
->会导致分割存档块。
python脚本,该脚本对以前的拆分命令tar.gz_0001到tar.gz_0001.gpg等的每个文件进行加密
理想情况下,我可以做类似的事情:
tar {command with options} | split {command with options} | gpg {command with options}
将以以下格式生成文件:
filename.tar.gz_0001.gpg
关于如何做到这一点有什么建议吗
关键是要节省时间,不要在中间步骤中将数据写入硬盘
或者,
如果有人能指出我如何在python中完成大型文件夹的归档和拆分,而不必编写文档,这样数据就可以被加密,那也行
提前感谢。是否可以创建
tar.gz
,将该文件保存到磁盘,然后加密每个100MB块?那么你可以避免将100GB存储在RAM中。这就是我目前拥有的,除非我找到一个更优雅的解决方案,否则我将继续这样做。我将处理TB级的数据,这意味着我必须归档/拆分额外的数据,然后对相同的数据进行加密——有效地将写入的数据(包括源数据)翻一番,这意味着3倍的数据量。我已经通过管道tar和拆分(数据量的4倍)将其从三份减少到了三份。