文件

mc cat

語法

mc cat 命令會將檔案或物件的內容串連到另一個檔案或物件。您也可以使用此命令將指定的檔案或物件的內容顯示到 STDOUTcat 的功能與 cat 類似。

以下命令將 MinIO 部署上的物件內容串連到 STDOUT

mc cat play/mybucket/myobject.txt

mc cat 命令具有以下語法

mc [GLOBALFLAGS] cat                       \
                 ALIAS [ALIAS ...]         \
                 [--enc-c "value"]         \
                 [--offset "int"]          \
                 [--part-number "int"]     \
                 [--rewind]                \
                 [--tail "int"]            \
                 [--version-id "string"]   \
                 [--zip]
  • 方括號 [] 表示選用參數。

  • 同一行上的參數是相互關聯的。

  • 使用管道符號 | 分隔的參數是互斥的。

將範例複製到文字編輯器,並在終端機/shell 中執行命令之前,根據需要進行修改。

您也可以針對本機檔案系統使用 mc cat,以產生與 cat 命令列工具類似的結果。

參數

ALIAS
必要

MinIO 部署的別名和物件的完整路徑。例如

mc cat myminio/mybucket/myobject.txt

您可以在相同或不同的 MinIO 部署上指定多個物件。例如

mc cat myminio/mybucket/object.txt myminio/myotherbucket/object.txt

對於本機檔案系統上的物件,請指定該物件的完整路徑。例如

mc cat ~/data/object.txt
--enc-c
選用

使用用戶端管理的金鑰,使用伺服器端 SSE-C 加密 來加密或解密物件。

此參數接受格式為 KEY=VALUE 的金鑰值組

KEY

物件的完整路徑,格式為 alias/bucket/path/object.ext

您只能指定最上層的路徑,以針對該路徑中的所有操作使用單一加密金鑰。

VALUE

指定 32 位元組的 RawBase64 編碼金鑰 64 位元組的十六進位編碼金鑰,以供 SSE-C 加密使用。

Raw Base64 編碼拒絕 = 填補的金鑰。省略填補或使用支援 RAW 格式的 Base64 編碼器。

  • KEY - 物件的完整路徑,格式為 alias/bucket/path/object

  • VALUE - 用於加密物件的 32 位元組 RAW Base64 編碼資料金鑰。

例如

# RawBase64-Encoded string "mybucket32byteencryptionkeyssec"
--enc-c "myminio/mybucket/prefix/object.obj=bXlidWNrZXQzMmJ5dGVlbmNyeXB0aW9ua2V5c3NlYwo"

您可以重複此參數來指定多個加密金鑰。

指定前置詞的路徑,以將加密套用至該路徑中所有符合的物件

--enc-c "myminio/mybucket/prefix/=bXlidWNrZXQzMmJ5dGVlbmNyeXB0aW9ua2V5c3NlYwo"

注意

MinIO 強烈建議不要在生產環境工作負載中使用 SSE-C 加密。請改為透過 --enc-kms 參數使用 SSE-KMS 或透過 --enc-s3 參數使用 SSE-S3。

--offset
選用

指定一個整數,表示命令從中偏移輸出的位元組數。

--part-number 旗標互斥。

--part-number
選用

下載多部分上傳的特定部分編號。指定要下載的部分編號的整數。

--offset--tail 旗標互斥。

--rewind
選用

指示 mc cat 僅針對在指定時間點存在的物件版本執行操作。

  • 若要倒回至過去的特定日期,請將日期指定為 ISO8601 格式的時間戳記。例如:--rewind "2020.03.24T10:00"

  • 若要倒回一段時間,請以 #d#hh#mm#ss 格式指定時間長度字串。例如:--rewind "1d2hh3mm4ss"

--rewind 需要指定的 ALIAS 為支援儲存貯體版本控制的 S3 相容服務。對於 MinIO 部署,請使用 mc version 來啟用或停用儲存貯體版本控制。

--tail
選用

指定一個整數,表示命令從中修剪輸出的位元組數。

--part-number 旗標互斥。

--version-id, vid
選用

指示 mc cat 僅針對指定的物件版本執行操作。

--version-id 需要指定的 ALIAS 為支援儲存貯體版本控制的 S3 相容服務。對於 MinIO 部署,請使用 mc version 來啟用或停用儲存貯體版本控制。

--zip
選用

將來源上的 zip 檔案內容解壓縮到遠端。需要 MinIO 部署作為來源 ALIAS

全域旗標

此命令支援任何全域旗標

範例

檢視 S3 物件

使用 mc cat 來傳回物件

mc cat ALIAS/PATH
  • ALIAS 取代為 S3 相容主機的 別名

  • PATH 取代為 S3 相容主機上物件的路徑。

檢視特定時間點的 S3 物件

使用 mc cat --rewind 來傳回過去特定時間點的物件

mc cat ALIAS/PATH --rewind DURATION
  • ALIAS 取代為 S3 相容主機的 別名

  • PATH 取代為 S3 相容主機上物件的路徑。

  • DURATION 取代為命令傳回物件的過去時間點。例如,指定 30d 可傳回早於目前日期 30 天的物件版本。

需要版本控制

mc cat 需要使用 儲存桶版本控制 功能。請使用 mc version 在儲存桶上啟用版本控制。

檢視特定版本的 S3 物件

使用 mc cat --version-id 來返回特定版本的物件。

mc cat ALIAS/PATH --version-id VERSION
  • ALIAS 取代為 S3 相容主機的 別名

  • PATH 取代為 S3 相容主機上物件的路徑。

  • VERSION 替換為要返回的物件的特定版本。

需要版本控制

mc cat 需要使用 儲存桶版本控制 功能。請使用 mc version 在儲存桶上啟用版本控制。

下載特定部分

使用 mc cat --part-number 來下載多部分上傳的特定部分。

mc cat ALIAS/PATH --part-number=#
  • ALIAS 取代為 S3 相容主機的 別名

  • PATH 取代為 S3 相容主機上物件的路徑。

  • # 替換為要下載的部分編號的整數。例如,要下載 16 部分多部分檔案的第 3 部分,請使用 --part-number=3

如果您使用 --offset--tail 旗標,則不能使用 --part-number 旗標。

行為

S3 相容性

mc 命令列工具是為與 AWS S3 API 相容而建構的,並已在 MinIO 和 AWS S3 上針對預期的功能和行為進行測試。

MinIO 對於其他 S3 相容服務不提供任何保證,因為它們的 S3 API 實作未知,因此不受支援。雖然 mc 命令 可能 會如文件所述運作,但任何此類使用都由您自行承擔風險。