watermint toolbox - The multi-purpose utility command-line tool for web services

dropbox file sync online

オンラインファイルを同期します (非可逆な操作です)

セキュリティ

watermint toolboxは認証情報をファイルシステム上に保存します. それは次のパスです:

OS パス
Windows %HOMEPATH%\.toolbox\secrets (e.g. C:\Users\bob.toolbox\secrets)
macOS $HOME/.toolbox/secrets (e.g. /Users/bob/.toolbox/secrets)
Linux $HOME/.toolbox/secrets (e.g. /home/bob/.toolbox/secrets)

これらの認証情報ファイルはDropboxサポートを含め誰にも共有しないでください. 不必要になった場合にはこれらのファイルを削除しても問題ありません. 認証情報の削除を確実にしたい場合には、アプリケーションアクセス設定または管理コンソールからアプリケーションへの許可を取り消してください.

方法は次のヘルプセンター記事をご参照ください:

  • Dropbox (個人アカウント): https://help.dropbox.com/installs-integrations/third-party/third-party-apps

認可スコープ

説明
Dropbox: ユーザー名、メールアドレス、国名など、Dropboxアカウントの基本情報を表示します
Dropbox: Dropboxのファイルやフォルダのコンテンツを表示
Dropbox: Dropboxのファイルやフォルダのコンテンツを編集

認可

最初の実行では、tbxはあなたのDropboxアカウントへの認可を要求します. リンクをブラウザにペーストしてください. その後、認可を行います. 認可されると、Dropboxは認証コードを表示します. tbxにこの認証コードをペーストしてください.


watermint toolbox xx.x.xxx
==========================

© 2016-2024 Takayuki Okazaki
オープンソースライセンスのもと配布されています. 詳細は`license`コマンドでご覧ください.

1. 次のURLを開き認証ダイアログを開いてください:

https://www.dropbox.com/oauth2/authorize?client_id=xxxxxxxxxxxxxxx&response_type=code&state=xxxxxxxx

2. 'Allow'をクリックします (先にログインしておく必要があります):
3. 認証コードをコピーします:
認証コードを入力してください

インストール

最新リリースからコンパイル済みのバイナリをダウンロードしてください. Windowsをお使いの方は、tbx-xx.x.xxx-win.zipのようなzipファイルをダウンロードしてください. その後、アーカイブを解凍し、デスクトップ フォルダに tbx.exe を配置します. watermint toolboxは、システムで許可されていれば、システム内のどのパスからでも実行できます. しかし、説明書のサンプルでは、デスクトップ フォルダを使用しています. デスクトップ フォルダ以外にバイナリを配置した場合は、パスを読み替えてください.

利用方法

このドキュメントは”デスクトップ”フォルダを例として使用します.

実行

Windows:

cd $HOME\Desktop
.\tbx.exe dropbox file sync online -src /DROPBOX/PATH/SRC -dst /DROPBOX/PATH/DST

macOS, Linux:

$HOME/Desktop/tbx dropbox file sync online -src /DROPBOX/PATH/SRC -dst /DROPBOX/PATH/DST

macOS Catalina 10.15以上の場合: macOSは開発者情報を検証します. 現在、tbxはそれに対応していません. 実行時の最初に表示されるダイアログではキャンセルします. 続いて、”システム環境設定”のセキュリティーとプライバシーから一般タブを選択します. 次のようなメッセージが表示されています:

“tbx”は開発元を確認できないため、使用がブロックされました。

“このまま開く”というボタンがあります. リスクを確認の上、開いてください. 2回目の実行ではダイアログに”開く”ボタンがありますので、これを選択します

オプション:

オプション 説明 デフォルト
-delete ソースパスでファイルが削除された場合はファイルを削除 false
-dst 宛先のパス  
-name-disable-ignore 名前によるフィルター. システムファイルと除外ファイルを処理対象外とします.  
-name-name 名前によるフィルター. 名前による完全一致でフィルター.  
-name-name-prefix 名前によるフィルター. 名前の前方一致によるフィルター.  
-name-name-suffix 名前によるフィルター. 名前の後方一致によるフィルター.  
-peer アカウントの別名 default
-skip-existing 既存ファイルをスキップします. 上書きしません. false
-src 元のパス  

共通のオプション:

オプション 説明 デフォルト
-auth-database 認証データベースへのカスタムパス (デフォルト: $HOME/.toolbox/secrets/secrets.db)  
-auto-open 成果物フォルダまたはURLを自動で開く false
-bandwidth-kb コンテンツをアップロードまたはダウンロードする際の帯域幅制限(Kバイト毎秒). 0の場合、制限を行わない 0
-budget-memory メモリの割り当て目標 (メモリ使用量を減らすために幾つかの機能が制限されます) normal
-budget-storage ストレージの利用目標 (ストレージ利用を減らすためログ、機能を限定します) normal
-concurrency 指定した並列度で並列処理を行います プロセッサー数
-debug デバッグモードを有効にする false
-experiment 実験的機能を有効化する  
-extra 追加パラメータファイルのパス  
-lang 表示言語 auto
-output 出力書式 (none/text/markdown/json) text
-output-filter 出力フィルタ・クエリ(jq構文)。レポートの出力はjq構文を使ってフィルタリングされる。このオプションは、レポートがJSONとして出力される場合にのみ適用される。  
-proxy HTTP/HTTPS プロクシ (hostname:port). プロキシの設定を省略したい場合はDIRECTを指定してください  
-quiet エラー以外のメッセージを抑制し、出力をJSONLフォーマットに変更します false
-retain-job-data ジョブデータ保持ポリシー default
-secure トークンをファイルに保存しません false
-skip-logging ローカルストレージへのログ保存をスキップ false
-verbose 現在の操作を詳細に表示します. false
-workspace ワークスペースへのパス  

実行結果

作成されたレポートファイルのパスはコマンド実行時の最後に表示されます. もしコマンドライン出力を失ってしまった場合には次のパスを確認してください. [job-id]は実行の日時となります. このなかの最新のjob-idを各委任してください.

OS パスのパターン
Windows %HOMEPATH%\.toolbox\jobs\[job-id]\reports C:\Users\bob.toolbox\jobs\20190909-115959.597\reports
macOS $HOME/.toolbox/jobs/[job-id]/reports /Users/bob/.toolbox/jobs/20190909-115959.597/reports
Linux $HOME/.toolbox/jobs/[job-id]/reports /home/bob/.toolbox/jobs/20190909-115959.597/reports

レポート: deleted

パス このコマンドはレポートを3種類の書式で出力します. deleted.csv, deleted.json, ならびに deleted.xlsx.

説明
entry_path パス
entry_shard.file_system_type ファイルシステムの種別
entry_shard.shard_id シャードID
entry_shard.attributes シャードの属性

-budget-memory lowオプションを指定した場合、レポートはJSON形式のみで生成されます

レポートが大きなものとなる場合、.xlsxフォーマットのファイルは次のようにいくつかに分割されて出力されます; deleted_0000.xlsx, deleted_0001.xlsx, deleted_0002.xlsx, …

レポート: skipped

このレポートは処理結果を出力します. このコマンドはレポートを3種類の書式で出力します. skipped.csv, skipped.json, ならびに skipped.xlsx.

説明
status 処理の状態
reason 失敗またはスキップの理由
input.entry_path パス
input.entry_shard.file_system_type ファイルシステムの種別
input.entry_shard.shard_id シャードID
input.entry_shard.attributes シャードの属性

-budget-memory lowオプションを指定した場合、レポートはJSON形式のみで生成されます

レポートが大きなものとなる場合、.xlsxフォーマットのファイルは次のようにいくつかに分割されて出力されます; skipped_0000.xlsx, skipped_0001.xlsx, skipped_0002.xlsx, …

レポート: summary

このレポートはアップロード結果の概要を出力します. このコマンドはレポートを3種類の書式で出力します. summary.csv, summary.json, ならびに summary.xlsx.

説明
start 開始時間
end 完了時間
num_bytes 合計アップロードサイズ (バイト)
num_files_error 失敗またはエラーが発生したファイル数.
num_files_transferred アップロード/ダウンロードされたファイル数.
num_files_skip スキップ対象またはスキップ予定のファイル数
num_folder_created 作成されたフォルダ数.
num_delete 削除されたエントリ数.
num_api_call この処理によって消費される見積アップロードAPI数

-budget-memory lowオプションを指定した場合、レポートはJSON形式のみで生成されます

レポートが大きなものとなる場合、.xlsxフォーマットのファイルは次のようにいくつかに分割されて出力されます; summary_0000.xlsx, summary_0001.xlsx, summary_0002.xlsx, …

レポート: uploaded

このレポートは処理結果を出力します. このコマンドはレポートを3種類の書式で出力します. uploaded.csv, uploaded.json, ならびに uploaded.xlsx.

説明
status 処理の状態
reason 失敗またはスキップの理由
input.path パス
result.name 名称
result.path_display パス (表示目的で大文字小文字を区別する).
result.client_modified ファイルの場合、更新日時はクライアントPC上でのタイムスタンプ
result.server_modified Dropbox上で最後に更新された日時
result.size ファイルサイズ(バイト単位)
result.content_hash ファイルコンテンツのハッシュ
result.has_explicit_shared_members trueの場合、結果には、各ファイルに明示的なメンバーがいるかどうかを示すフラグが含まれます.

-budget-memory lowオプションを指定した場合、レポートはJSON形式のみで生成されます

レポートが大きなものとなる場合、.xlsxフォーマットのファイルは次のようにいくつかに分割されて出力されます; uploaded_0000.xlsx, uploaded_0001.xlsx, uploaded_0002.xlsx, …

ネットワークプロクシの設定

プログラムはシステム設定から自動的にプロクシ設定情報を取得します. しかしながら、それでもエラーが発生する場合には明示的にプロクシを指定することができます. -proxy オプションを利用します, -proxy ホスト名:ポート番号のように指定してください. なお、現在のところ認証が必要なプロクシには対応していません.

}