python - 在 SCP 之前列出 Google Cloud 虚拟机中的文件
问题描述
我正在尝试从谷歌云虚拟机下载特定文件。我的谷歌云命令正在搜索的大多数目录只有 1 个该名称的文件。但是,某些目录具有多个名称相似但时间戳不同的文件。是否有一个命令可以用来列出谷歌云目录中的文件,以便在使用 SCP 之前找到最新的文件名?
我目前正在通过 os.system 使用以下 f 字符串来下载文件。但是,对于目录中有多个文件的情况,这还不够好。
download_file = f"gcloud compute scp {project}:/nfs-client/example/documents/ID-{ID}/files/response* --zone=europe-west2-c ./temp-documents/ID-{ID}.xml"
os.system(download_file)
解决方案
您可以使用gcloud compute ssh
命令从文件夹中获取最新文件:
gcloud compute ssh example-instance --zone=us-central1-a --command "ls -t /nfs-client/example/documents/ID-{ID}/files/response* | head -1"
或类似的东西
然后将您的 scp 命令替换为上述命令的输出以获取最新文件。
推荐阅读
- r - 如果每季度某一天数的行 = 0,则删除所有行
- mysql - 如何在mysql服务器中为用户设置远程访问?
- android - PagedList 和 RecyclerView 交互的性能可以提高吗?
- sql-server - 查询临时表中的重复行导致不重复的行
- mysql - 如何在没有重复组的实体框架核心中分组?
- php - 在 php 购物车中找不到数组项
- javascript - 将 vanilla js 库添加到 Nuxt
- sql-server - SSRS:数据驱动订阅自动增量
- swift - Swift 日期选择器(倒数计时器)如何设置为零
- python - 打印字符串而不是列表中的名称(Python)