Amazon-Web-Services

AWS S3 同步文件轉換為十六進製文件

  • May 25, 2019

在刪除儲存桶之前,我使用 AWS cli 將我的 S3 儲存桶同步到我的電腦。同步後我沒有立即註意到它,但我現在意識到我的大部分文件都已轉換為十六進製文件(?)。例如,我現在擁有的 CSS 文件如下所示:

1f8b 0800 632b 405b 02ff cd5c 4d93 e4b8

71bd fb57 9477 439e 1945 574f 83f5 5d1d

b256 b643 111b b10a 1d56 071d 7c01 49b0

0ad3 24c1 01c1 eeae e998 ff6e 8044 b2c0

ea07 7a1d 7bb1 0eab 69e0 0104 8187 4466

e2b1 3eff f15f ff65 f1c7 c5e2 afaa 368b

bfbc 8856 5562 b1be 4fee 1f16 e965 f153

ce9f c589 d7f9 65b1 5c9c 8d69 8e9f 3f17

等等。

並非我的所有文件都已轉換,但似乎沒有任何明顯的文件轉換模式。文件大小似乎與我記得的原始未損壞文件或多或少一致。

這是我的文件在同步時損壞了還是發生了其他事情?我可以做些什麼來恢復我的文件嗎?我無法再訪問原始 S3 儲存桶了。

文件的前兩個字節, 是表示gzip文件壓縮格式0x1f 0x8b的幻數。您可能已將這些文件(gzip)儲存在儲存桶中,以便瀏覽器以壓縮格式下載它們,使用較少的頻寬,並且它們已完全按照 S3 中的存在方式同步到您的電腦。

要進行驗證,請在安全的地方製作一份副本,然後 - 僅處理副本,而不是原始文件 - 重命名一個測試文件,例如foo.cssfoo.css.gz然後執行gzip -d foo.css.gz. 這應該會為您留下一個名為foo.css內容的文件,該文件的內容形式更易於辨識。

引用自:https://serverfault.com/questions/968738