リファレンス
終了コード
終了コードで成功、実行時エラー、使い方の誤りを区別します。
| 終了コード | 意味 | 主なcode |
|---|---|---|
0 | 成功(-h / --helpと-V / --versionを含む) | — |
1 | 実行時エラーまたはAPIエラー:認証、クレジット、ネットワーク、サーバー、実行の失敗、タイムアウト | unauthorized、insufficient_balance、network_error、task_failed、timeout |
2 | 使い方の誤り:コマンドやフラグの入力ミス、無効な入力 | usage_error、unknown_command、missing_input、too_many_images、file_not_found |
終了コードが2の場合、同じコマンドを再試行しても解決しないので、まずコマンドを修正してください。1の場合は、codeに応じてチャージするか、認証し直すか、時間をおいて再試行するかを判断します。各codeがどちらに分類されるかはエラーコードを参照してください。
コマンドが成功しても失敗しても標準出力にはJSONエンベロープが出力されるため、終了コードとあわせて使えます。
tufty pet-dressup --product ./sweater.jpg --model ./corgi.jpg --save ./out > result.json
case $? in
0) echo "完了" ;;
2) echo "コマンドを修正してください:$(jq -r .message result.json)" ;;
*) echo "失敗:$(jq -r .code result.json)" ;;
esac