2017-03-16 6 views
-1

bashに "Nautilus Script"というスクリプトがあります。bashからpythonスクリプトへの値の転送

blender -b blendfile.blend -P script.py -x 1 -F PNG -f 1 

そして私はにwhant:

#!/bin/bash 

while [ $# -gt 0 ]; do 
    file=$1 
    #doing smf with selected file 
    shift 
done 

Аlso、私はカスタムPythonスクリプトとCMDでの能力の起動ブレンダー、知っている:選択したファイルにカスタム操作を行うため、システムフォルダから実行することができます値fileを取り、script.pyでそれを使用するPythonスクリプトにそれを転送します。

#!/bin/bash 

while [ $# -gt 0 ]; do 
    file=$1 
    blender -b blendfile.blend -P script.py//+put here $file// -x 1 -F PNG -f 1  
    shift 
done 

私はこれをどのように行うことができますか?

についてthis answer注、Pythonスクリプトをブレンダーで起動し、ないbashシェルで

+0

ように見える

import sys argv = sys.argv argv = argv[argv.index("--") + 1:] # get all args after "--" 

を使用した後、すべての引数を読むことができますblendfile.blend -b 'ブレンダーことを言おうとしています-P script.py "$ 1" -x 1 -F PNG -f 1'はループ内であなたが求めていることをしません。 – tripleee

+0

@ tripleeeの答えがNils Wernerの作品です。 [この回答](http://stackoverflow.com/questions/10667314/python-script-with-arguments-for-command-line-blender)なぜこの単純な方法は動作しませんexplanes – Crantisz

答えて

1

blender.stackexchange

から

Blenderは--後にすべての引数を無視し、Pythonはありません。あなたはPythonで--を検索し、それはあなたが、その後に渡すことになる引数が

blender -b blendfile.blend -P script.py -x 1 -F PNG -f 1 -- $file 
+0

これは、ありがとう! – Crantisz

関連する問題