要在AWS Lambda中解压.tar文件,您可以使用Python的tarfile模块。下面是一个示例代码,展示如何在AWS Lambda中解压.tar文件:
import tarfile
import os
def lambda_handler(event, context):
# 获取.tar文件的路径
tar_file_path = event['tar_file_path']
# 创建目标文件夹,用于存放解压后的文件
target_folder = '/tmp/unzipped_files'
os.makedirs(target_folder, exist_ok=True)
try:
# 打开.tar文件
with tarfile.open(tar_file_path, 'r') as tar:
# 解压所有文件到目标文件夹
tar.extractall(target_folder)
# 在这里可以继续处理解压后的文件
return {
'statusCode': 200,
'body': 'Tar file extraction successful'
}
except Exception as e:
return {
'statusCode': 500,
'body': f'Tar file extraction failed: {str(e)}'
}
在上述示例代码中,event['tar_file_path']
是传递给Lambda函数的.tar文件的路径。您可以根据您的具体需求修改代码。解压后的文件将存储在/tmp/unzipped_files
文件夹中。
请确保在创建Lambda函数时,为函数分配了足够的内存和执行时间来处理.tar文件的解压缩操作。