使用命令列介面 (CLI) 傳輸檔案 - 靈活的工作室文件傳輸

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用命令列介面 (CLI) 傳輸檔案

以下各節詳細說明如何File Transfer使用命令列介面 (CLI) 上傳、下載及設定常用資料夾。

上傳檔案

下列指令適用於命令列介面 (CLI)。使用這些命令,您可以從組態檔案中設定的對應 S3 儲存貯體下載檔案。您可以從電腦上的任何位置執行這些命令。不過,我們建議您從 root 執行這些指令。

File Transfer保留您提供的資料夾結構。這表示資料夾結構在到達 Amazon S3 後保持不變。但是,您不能給出File Transfer絕對路徑。這意味著文件路徑不能以/(正斜杠)開頭。

File Transfer上傳到所有 S3 儲存類別。如需有關儲存類別的詳細資訊,請參閱 Amazon S3 儲存類別

注意

我們建議您停用本機電腦上的睡眠模式。如果您的電腦啟動睡眠模式,進行中的傳輸可能會中斷。在「設定」 中,切換「停用睡眠」(僅限 macOS)

使用 CLI 開始上傳
  1. 開啟終端機。

  2. (建議) 瀏覽至包含您要上載之檔案和資料夾的資料夾。

  3. 從電腦上的任何位置執行下列命令,將檔案從本機電腦上傳到 Amazon S3。

    filetransfer upload [transfer profile] [relative path]
    1. [傳輸設定檔] 取代為您要使用的傳輸設定檔。

    2. [相對路徑] 取代為您要上傳的檔案或目錄的路徑。

      1. 相對路徑不是以 / (正斜線) 開頭。範例:Users/username/Desktop/folder1

      2. 不要使用絕對路徑。絕對檔案路徑以 / (正斜線) 開頭。範例:/Users/username/Desktop/folder1

    3. 範例命令:filetransfer upload [transfer profile name] /Users/username/Desktop/folder1

File Transfer對您File Transfer校驗和的文件執行。總和檢查碼用於其他檔案完整性驗證,以便您偵測檔案是否意外修改。完成這些總和檢查碼之後,傳輸就會開始。如果您提供自己的媒體雜湊清單 (MHL),File Transfer可以驗證您的檔案是否符合 MHL 中定義的總和檢查碼。MHL 是一個 XML 文件,通常與原始相機素材一起提供。

旗標

若要執行某些動作,您可以在指令的結尾加入旗標。它是可選的使用標誌。

旗標 描述 範例

--help

列出可用的旗標和指令。

filetransfer --help

-校驗和算法

定義File Transfer執行的總和檢查碼計算。支援的值:md5XXHashXXHash64、和XXH3

filetransfer upload [remote configuration] [relative path] –-checksum-algorithm xxhash64

--enable-metadata-filter

使用時,會自動File Transfer篩選系統中繼資料檔案。這些檔案包括Thumbs.db.DS_Store、和開頭的檔案 ._.

filetransfer upload [remote configuration] [relative path] --enable-metadata-filter

-過濾器

根據格式篩選正在傳輸的檔案。篩選欄位接受有效的規則運算式。範例:^.*\.(mov)$僅傳輸結尾為的檔案.mov。您可以將篩選器新增至組態檔案,以執行特定動作。當您將篩選器新增至組態,而不是在特定指令上使用篩選器作為旗標時,會將該動作File Transfer套用至所有傳輸。

filetransfer upload [remote configuration] [relative path] --filter "^.*\.(mov)$"

這個命令只會上傳.mov格式的檔案。

--force

無論篩選器或衝突如何,都強制執行傳輸。默認情況下,File Transfer不會傳輸先前傳輸的文件。

強制標誌使得File Transfer忽略任何過濾器或衝突。如果您不小心刪除了需要下載的文件,此功能非常有用。

filetransfer upload [remote configuration] [relative path] --force

-最大年齡

僅傳輸在目前時間結束的時間範圍內建立或修改的檔案。如果沒有提供任何單位,最大年齡將以秒為單位。例如,2d將從最近兩天下載文件,並3500將上傳最近 3500 秒的文件。

filetransfer upload [remote configuration] [relative path] --max-age “2d”

上述命令只會從過去 2 天內將檔案上傳到 S3 儲存貯體。

-反复计数

如果發生錯誤,File Transfer將嘗試傳輸檔案的次數與重試次數相同。

filetransfer upload [remote configuration] [relative path] --retry-count 4

-塊大小

區塊大小 (以 MB 為單位) (預設為 25)

filetransfer upload [remote configuration] [relative path] --chunk-size 50

-自動調整

允許工具決定最佳配置值以優化傳輸

filetransfer upload [remote configuration] [relative path] --auto-tuning true

--max-active-checksums

作用中總和檢查碼的最大數目 (預設值為 1)。此旗標僅適用於上傳。

filetransfer upload [remote configuration] [relative path] --max-active-checksums 5

--max-active-transfers

最大傳輸次數

filetransfer upload [remote configuration] [relative path] --max-active-transfers 10

-前綴

上傳和下載的 S3 前綴路徑

filetransfer upload [remote configuration] [relative path] --prefix my/s3/path

--profile

AWS 具名設定檔

filetransfer upload [remote configuration] [relative path] --profile my_named_profile

-線程

每次上傳的執行緒數目 (預設為 10)

filetransfer upload [remote configuration] [relative path] --threads 10

文件轉移配置目錄

取代預設.filetransfer資料夾。

該變量可以定義任何目錄來存儲配置文件和數據庫文件。如果FILETRANSFER_CONFIG_DIR未設定,則會使用預設值。~/.filetransfer檔案必須仍然命名為configuration.yamlconfiguration.yaml、和checksum-cache.db。如果它們不存在,則會創建它們。

FILETRANSFER_CONFIG_DIR=Desktop/config1 filetransfer upload [remote configuration] [relative path]

設定常用資料夾

使用 CLI 設定上傳常用資料夾。
  1. 使用電腦上的任何文字編輯軟體開啟組態檔案。

    1. 視窗:瀏覽至電腦上的資User/<your username>料夾。開啟資.filetransfer料夾並使用文字編輯器開啟filetransfer.yaml檔案。

    2. macOS:輸入Cmd+Shift+G。然後輸入~/.filetransfer。使用文字編輯器開啟 filetransfer.yaml 檔案。

    3. Linux:使用任何文字編輯器開啟filetransfer.yaml檔案。檔案位於中~/.filetransfer/configuration.yaml

  2. 使用下列欄位建立新hot_folder區段

    hot folders: - enabled: true local_source_folder: /Users/user/myhotfolder name: my_hot_folder remote_configurations: - remote_configuration_name: example_configuration s3_destination_folder: my/s3/prefix
  3. enabled常用資料夾只有在設定為 true 時才會處於作用中狀態。

  4. 本地資料夾取代為您要監視的資料夾位置。File Transfer檔案路徑必須包含完整路徑:C:\path\to\upload-hot-folder(Windows) 或 /path/to/upload-hot-folder (Linux&macOS)。

  5. remote_configurations

    1. 遠端組態名稱取代為您要使用的遠端組態名稱。您可以在下面找到您的遠端配置protocols.s3.transfer_profiles

    2. (選擇性) 將 s3_destination_資料夾取代為您要上傳檔案的S3 目的地資料夾。 File Transfer將在 Amazon S3 中創建該文件夾,如果它不存在。如果未設定值,檔案將會放置在值區的根目錄中。

    3. (選擇性) 您可以在此新增任意數量的遠端組態項目,而常用資料夾就會使用每個遠端組態開始上傳。這可讓您設定將上傳至多個值區的單一常用資料夾。

  6. 下列範例是具有多個常用資料夾的上傳常用資料夾組態。在此範例中,有兩個常用資料夾。

    1. 第一個常用資料夾設定為監視資Media/drive料夾。將檔案新增至此資料夾時,會啟動兩次上傳,一個使用example1遠端設定,另一個使用example2遠端設定。每次上傳將使用其各自的s3_destination_folder

    2. 第二個常用資料夾設定為監視資/Users/user1/myhotfolder料夾。將檔案新增至此資料夾時,會使用another_configuration遠端設定啟動單一上傳作業。所有文件都將上傳到 Amazon S3 中的文件example_folder夾。

    hot folders: - enabled: true local_source_folder: /Media/drive name: my_hot_folder remote_configurations: - remote_configuration_name: example1 s3_destination_folder: my/s3/folder - remote_configuration_name: example2 s3_destination_folder: second/folder - enabled: true local_source_folder: /Users/user1/my_hot_folder name: another_hot_folder remote_configurations: - remote_configuration_name: another_configuration s3_destination_folder: example/folder
  7. 儲存組態檔案。

    注意

    當您啟動協助程式時,或新增/更新常用資料夾時,會啟動整個資料夾的自動強制上傳。如果您不喜歡這種行為,您可以開啟 GUI 並取消工作。

下載檔案

使用下列命令,您可以從組態檔案中設定的對應 S3 儲存貯體下載檔案。您可以從電腦上的任何位置執行這些命令。我們建議您從 root 執行這些指令。

File Transfer無法直接從深層存檔或 Glacier 儲存類別下載。這是因為它們存儲在不同的系統中。這些類型的物件需要擷取檔案的不同方法。如需有關從不同系統擷取物件的詳細資訊,請參閱還原封存物件。如需有關儲存類別的詳細資訊,請參閱 Amazon S3 儲存類別

注意

我們建議您停用本機電腦上的睡眠模式。如果您的電腦啟動睡眠模式,進行中的傳輸可能會中斷。在「設定」 中,切換「停用睡眠」(僅限 macOS)

使用 CLI 開始下載
  1. 開啟終端機。

  2. (建議) 瀏覽至您要下載檔案的目標資料夾。

  3. 從電腦上的任何位置執行下列命令,將檔案從 Amazon S3 下載到電腦上。

    filetransfer download [transfer profile] [relative path]
    1. [傳輸設定檔] 取代為您要使用的傳輸設定檔。

    2. [相對路徑] 替換為您要下載文件的目標路徑。

      1. 相對路徑不是以 / (正斜線) 開頭。範例:Users/username/Desktop/folder1

      2. 不要使用絕對路徑。絕對檔案路徑以 / (正斜線) 開頭。範例:/Users/username/Desktop/folder1

    3. 範例命令:filetransfer download [transfer profile name] /Users/username/Desktop/folder1

File Transfer檢查本機File Transfer資料庫,以確認您選取的檔案是否已下載。

旗標

您可以在指令結尾加入旗標,以執行某些動作。它是可選的使用標誌。

旗標 描述 範例

--help

列出可用的旗標和指令。

filetransfer --help

-校驗和算法

定義File Transfer執行的總和檢查碼計算。支援的值:md5XXHashXXHash64、和XXH3

filetransfer download [remote configuration] [relative path] –-checksum-algorithm xxhash64

--enable-metadata-filter

使用時,會自動File Transfer篩選系統中繼資料檔案。這些檔案包括Thumbs.db.DS_Store、和開頭的檔案 ._.

filetransfer download [remote configuration] [relative path] --enable-metadata-filter

-過濾器

根據格式篩選正在傳輸的檔案。篩選欄位接受有效的規則運算式。範例:^.*\.(mov)$僅傳輸結尾為的檔案.mov。您可以將篩選器新增至組態檔案,以執行特定動作。當您將篩選器新增至組態,而不是在特定指令上使用篩選器作為旗標時,會將該動作File Transfer套用至所有傳輸。

filetransfer download [remote configuration] [relative path] --filter "^.*\.(mov)$"

這個命令只會下載.mov格式的檔案。

--force

無論篩選器或衝突如何,都強制執行傳輸。默認情況下,File Transfer不會傳輸先前傳輸的文件。

強制標誌使得File Transfer忽略任何過濾器或衝突。如果您不小心刪除了需要下載的文件,此功能非常有用。

filetransfer download [remote configuration] [relative path] --force

-最大年齡

僅傳輸在目前時間結束的時間範圍內建立或修改的檔案。如果沒有提供任何單位,最大年齡將以秒為單位。例如,2d將從最近兩天下載文件,並3500將上傳最近 3500 秒的文件。

filetransfer download [remote configuration] [relative path] --max-age “2d”

上述命令只會將最近 2 天的檔案下載到 S3 儲存貯體。

-反复计数

如果發生錯誤,File Transfer將嘗試傳輸檔案的次數與重試次數相同。

filetransfer download [remote configuration] [relative path] --retry-count 4

-塊大小

區塊大小 (以 MB 為單位) (預設為 25)

filetransfer download [remote configuration] [relative path] --chunk-size 50

-自動調整

允許工具決定最佳配置值以優化傳輸

filetransfer download [remote configuration] [relative path] --auto-tuning true

--max-active-checksums

使用中總和檢查碼的最大數目 (預設值為 1)

filetransfer download [remote configuration] [relative path] --max-active-checksums 5

--max-active-transfers

最大傳輸次數

filetransfer download [remote configuration] [relative path] --max-active-transfers 10

-前綴

上傳和下載的 S3 前綴路徑

filetransfer download [remote configuration] [relative path] --prefix my/s3/path

--profile

AWS 具名設定檔

filetransfer download [remote configuration] [relative path] --profile my_named_profile

-線程

每次下載的執行緒數目 (預設為 10)

filetransfer download [remote configuration] [relative path] --threads 10

文件轉移配置目錄

取代預設.filetransfer資料夾。

該變量可以定義任何目錄來存儲配置文件和數據庫文件。如果FILETRANSFER_CONFIG_DIR未設定,則會使用預設值。~/.filetransfer檔案必須仍然命名為configuration.yamlconfiguration.yaml、和checksum-cache.db。如果它們不存在,則會創建它們。

FILETRANSFER_CONFIG_DIR=Desktop/config1 filetransfer download [remote configuration] [relative path]