2

だから私はOSXでAutomatorを使うのは初めてです

私は本当に単純なpython関数を持っています

def test(input1,input2,output):
    print str(input1)
    print str(input2)
    print str(output)
    return 'function works'

私がやりたいことは、2 つの入力のファイルの場所と出力のファイルの宛先 (出力の名前テキスト ボックス) を要求する単純なアプリケーションを生成することです。

だから私はいじっています:Automator>ワークフローを選択>アクション>ファイルとフォルダー>ファインダーアイテムを要求(これらのうち2つを作成)>ユーティリティ>シェルスクリプトの実行

だから私は3つの質問があります:

1. Pythonスクリプトで、これらのファインダー項目をinput1、input2変数にそれぞれ割り当てるにはどうすればよいですか?

2. このコードの近くにスクリプトをどこに配置すればよいですか?

import sys

for f in sys.stdin:
    print f,

3. stdin、arguments はどう違いますか?

4

2 に答える 2

1

完全なワークフローは次のようになります。

ここに画像の説明を入力

Run Shell Scriptステップでは、配列を使用できるように に設定する必要がありますPass Input:。Python スクリプトは次のように変更できます。as argumentssys.args

import sys

input1 = sys.argv[1]
input2 = sys.argv[2]
output = sys.argv[3]
print input1
print input2
print output

View Resultsステップはデバッグ専用です。

に設定Pass Input:すると、入力引数はパイプラインto stdin経由でスクリプトに渡されます 。

于 2013-03-18T08:34:02.180 に答える
0

AppleScript を簡単に使用できます。

set inputA to (choose file with prompt "Please choose file one...")
set inputB to (choose file with prompt "Please choose file two…")
set outputA to (choose folder with prompt "Please choose a destination…")

return {((inputA as text) & return & inputB as text) & return & outputA}
于 2013-03-18T12:05:43.150 に答える