我在 s3 上有一堆文件。我用 .fog 配置文件设置了雾,所以我可以启动fog
并得到提示。如果我知道它的路径,现在如何访问和编辑 s3 上的文件?
问问题
4545 次
1 回答
11
最简单的做法可能是使用 IRB 或 PRY 来获取文件的本地副本,或者编写一个简单的脚本来下载、编辑然后重新上传它。假设您有一个名为 data.txt 的文件。
您可以使用以下脚本初始化与 S3 的连接。
require 'fog'
connection = Fog::Storage.new({
:provider => 'AWS',
:aws_secret_access_key => YOUR_SECRET_ACCESS_KEY,
:aws_access_key_id => YOUR_SECRET_ACCESS_KEY_ID
})
directory = connection.directories.get("all-my-data")
然后使用目录对象在本地文件系统上获取文件的副本。
local_file = File.open("/path/to/my/data.txt", "w")
file = directory.files.get('data.txt')
local_file.write(file.body)
local_file.close
使用您喜欢的编辑器编辑文件,然后再次将其上传到 S3。
file = directory.files.get('data.txt')
file.body = File.open("/path/to/my/data.txt")
file.save
于 2011-11-21T16:39:23.227 回答