0

私の目標は、選択したファイルとフォルダーを電子メールで送信するためのユーザーフレンドリーなオートマターサービスを作成することです。

ユーザーフレンドリーにするために、私は次のことを行う必要があります。

  1. 入力タイプを検出します。ファイルの場合は、次の手順に進みます。フォルダの場合は、最初にfolder_name.zipという名前を使用して圧縮します。

  2. 現在、私はファイル(選択されたバージョンまたはzipバージョンのフォルダー)のみを扱います。合計サイズが一定未満(たとえば20MB)の場合は、ロット全体を電子メールに追加します。そうでない場合は、ユーザーに本当に続行して、自分の答えに従って行動したいかどうかを尋ねます。

  3. クリーンアップ:作成されたzipファイルを削除します。

私はこのワークフローのほぼすべてのレベルで立ち往生しています(入力内の個々のアイテムのタイプを検出します。結果に応じて条件付きで動作します。すべてのアイテムのサイズを合計し、結果に基づいて条件付きで動作します)。

また、ファイル用とフォルダー用の2つの別々のアクションを実行することもできますが、「ファイルのみ」の入力タイプが見つかりません。

4

1 に答える 1

1

うーん。

サービスワークフローを作成しました。その概念実証です。メールにファイルを追加する最終段階はあなたに任されています。また、アプリケーション/バンドルのパッケージはチェックされないことに注意してください。Mac ではファイルとして表示されますが、それ以外ではフォルダーとして表示されます。

サービス ワークフローでは多くのことが行われています。( Automator でワークフローをテストするには、最初のアクションとして「Get Selected Finder Items」を追加します。ただし、サービスとして実行すると、はるかに高速に実行されます)

しかし、基本は次のとおりです。

サービスは選択されたものを受け取ります: 「ファインダー」内のファイルまたはフォルダー

1、Applescript を実行します。

選択されたアイテムを受け取り、サイズをチェックする AppleScript に渡し、すべてのアイテムが 20M より大きい場合はダイアログを表示します。( du コマンドは何を切り捨てるように見えることに注意してください)。ユーザーが OK を押した場合、先に進みます。キャンセルすると、ワークフローは停止します。20M 未満の場合、ダイアログは表示されません。先に進むだけです。

2、変数の設定値

完全なリストをストレージ変数に保存し、次のアクションに渡します。

3、ファインダー項目のフィルター

'kind' のフィルターは 'folder' で、結果を次のアクションに渡します。

4、アーカイブを作成します。

デスクトップに保存するためにこれを残しました。ただし、ユーザーの一時フォルダーに対して行うことをお勧めします。

結果を次のアクションに渡します。(もしあればzipファイルのパス。)

5、変数の設定値

zip ファイルへのパスをアーカイブ変数に格納します (作成されている場合) 。次のアクションに渡さないでください。

6,変数の値を取得する

(最後のアクションの結果は取得しません。)ストレージ 変数の値を取得します。結果を次のアクションに渡します。

7、ファインダー項目のフィルター

'kind' のフィルターが'folder'ではありません。結果を次のアクションに渡します。

8、変数の設定値

ファイルリストをfiles変数に格納します。....

ここから、変数が 2 つあります。 ファイルアーカイブ

それらを使用して、ファイルを参照するアイテムを送信し、メールでzipすることができます..

これは単なる概念実証であることを忘れないでください。

乾杯

于 2012-11-11T22:22:15.903 に答える