Ree*_*ece 4 command-line amazon-s3 amazon-web-services aws-cli
我是 AWS 的新手,特别是 AWS CLI 工具的新手,但到目前为止我似乎一切顺利。
我使用以下命令连接到 AWS S3 并将本地目录同步到我的 S3 存储桶:
set AWS_ACCESS_KEY_ID=AKIAIMYACCESSKEY
set AWS_SECRET_ACCESS_KEY=NLnfMySecretAccessCode
set AWS_DEFAULT_REGION=ap-southeast-2
aws s3 sync C:\somefolder\Data\Dist\ s3://my.bucket/somefolder/Dist/ --delete
Run Code Online (Sandbox Code Playgroud)
这是上传文件正常并显示每个文件的进度和结果。初始上传完成后,我假设所有新同步只会上传新的和修改的文件和文件夹。使用--delete将删除存储桶中本地服务器上不再存在的所有内容。
我希望能够将每次上传的结果(或者在其他服务器的情况下下载,这些服务器将获取正在上传的内容的副本)输出到本地计算机上的 .txt 文件,以便我可以使用 blat .exe 将内容通过电子邮件发送给将监控同步的人员。
所有这些都将放入一个批处理文件中,该文件将安排每晚运行。
可以输出到.txt吗?如果是这样,怎么办?
我自己还没有对此进行测试,但我发现一些资源表明您可以在 Windows 命令提示符中重定向命令行驱动应用程序的输出,就像在 Linux 中一样。
aws s3 sync C:\somefolder\Data\Dist\ s3://my.bucket/somefolder/Dist/ --delete > output.txt
Run Code Online (Sandbox Code Playgroud)
我找到的资源有:
初始上传完成后,我假设所有新同步只会上传新的和修改的文件和文件夹。使用 --delete 将删除存储桶中本地服务器上不再存在的所有内容。
这是正确的,同步将上传与目标(无论是 S3 存储桶还是本地计算机)相比的新文件或修改后的文件。
--delete 将删除目标(不一定是 S3 存储桶)中不在源中的任何内容。应谨慎使用它,以避免出现以下情况:您已下载、修改和同步一个文件,并且由于您的本地计算机没有所有文件,因此使用 --delete 标志将删除以下位置的所有其他文件目的地。