如何列出 /tmp 文件夹中的文件
how to list the files in your /tmp folder
我正在使用 AWS lambda 函数将文件下载到我的 /tmp 文件夹。
try:
s3.download_file(source_bucket_name, i, f"/tmp/{original_zip_file_name}")
except Exception as e:
print('Unable to download S3 file', e)
sys.exit(1)
行为有点不一致。在此之后我如何使用 Python 列出我的 tmp 文件夹中存在的文件?
编辑:
我的意思是,如何在同一 lambda 函数内(而不是在 lambda 函数结束后)在此代码片段之后立即列出 tmp 的内容。
因为稍后我又从 tmp 读取那些文件
顾名思义 (tmp) 该文件夹不是永久性的。 Lambda 在分布式架构中运行,一旦 lambda 函数执行结束,存储在 /tmp 文件夹中的 data/files 可能会被销毁。
Lambda 不保证函数调用将被重用,因此 /tmp 的内容(以及任何 运行 进程的内存)可能随时消失。
这就是您得到不一致结果的原因,请尝试其他文件系统,如 EFS 或 S3。
如果要检查 /tmp 文件夹中是否存在文件,可以使用
import os
os.path.isfile('/tmp/yourfilename')
#Get list of files
lst = os.listdir("/tmp")
我正在使用 AWS lambda 函数将文件下载到我的 /tmp 文件夹。
try:
s3.download_file(source_bucket_name, i, f"/tmp/{original_zip_file_name}")
except Exception as e:
print('Unable to download S3 file', e)
sys.exit(1)
行为有点不一致。在此之后我如何使用 Python 列出我的 tmp 文件夹中存在的文件?
编辑:
我的意思是,如何在同一 lambda 函数内(而不是在 lambda 函数结束后)在此代码片段之后立即列出 tmp 的内容。
因为稍后我又从 tmp 读取那些文件
顾名思义 (tmp) 该文件夹不是永久性的。 Lambda 在分布式架构中运行,一旦 lambda 函数执行结束,存储在 /tmp 文件夹中的 data/files 可能会被销毁。
Lambda 不保证函数调用将被重用,因此 /tmp 的内容(以及任何 运行 进程的内存)可能随时消失。
这就是您得到不一致结果的原因,请尝试其他文件系统,如 EFS 或 S3。
如果要检查 /tmp 文件夹中是否存在文件,可以使用
import os
os.path.isfile('/tmp/yourfilename')
#Get list of files
lst = os.listdir("/tmp")