5
我在s3上有一堆文件。我使用.fog配置文件設置了fog,這樣我可以啓動fog
並獲得提示。現在,如果我知道它的路徑,我如何訪問和編輯s3上的文件?如何使用霧來編輯s3上的文件?
我在s3上有一堆文件。我使用.fog配置文件設置了fog,這樣我可以啓動fog
並獲得提示。現在,如果我知道它的路徑,我如何訪問和編輯s3上的文件?如何使用霧來編輯s3上的文件?
最容易做的事情可能是使用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
我想有一種方法來更改文件的屬性,而無需重新上傳它,不是嗎?無論如何 - 您提供的內容讓我獲得了實驗所需的霧環境(這在文檔中找不到)。謝謝! –
我相信你可以在不重新上傳文件的情況下設置標題信息。您可以在[documentation](http://fog.io/1.1.1/storage/)或瀏覽[源代碼](http://github.com/fog/fog)中找到更多信息。 –