मैं बैच फ़ाइल बनाने की कोशिश करता हूं जो मूल रूप से काम करने के लिए आवश्यक सभी चीजें खोलता है। माया को खोलना काफी सरल है, लेकिन एक कदम आगे मैं यह करना चाहता हूं: इसे मेरी अंतिम खुली हुई फाइल को खोल दें। अगर मैं डॉक्टर को समझता हूं माया को कमांड लाइन से प्रारंभ करें

मैं यह कोशिश कर सकता था:

path/to/maya.exe -command [some MEL commands that may open the last opened file]

लेकिन मुझे कोई सुराग नहीं है कि एमईएल कैसे करें और मुझे लगता है कि यह विंडोज़ बैच के रूप में काम करने के लिए मुझे इसे एक कमांड लाइन के रूप में रखना चाहिए। मैं दस्तावेज़ों को पढ़ने की कोशिश करता हूं लेकिन मुझे कुछ भी नहीं मिल रहा है जिसका मैं उपयोग कर सकता हूं।

python("recent = cmds.optionVar(q='RecentFilesList')[-1]; cmds.file (recent, force=True, open=True)")

मुद्दे:

  • मुझे बैच के माध्यम से माया को उद्धरण चिह्नों को सही ढंग से पार्स करने का कोई तरीका नहीं मिल रहा है।
  • फ़ाइल कमांड को काम करने के लिए फ़ाइल को पहले सहेजने की आवश्यकता है ...

समाधान

इस उत्तर के लिए धन्यवाद:

  • फ़ाइल कमांड को पहले फ़ाइल को सहेजने की आवश्यकता के बिना काम करने के लिए बाध्य करने के लिए force=Trueमें cmds.file (recent, force=True, open=True) का उपयोग करें
  • माया को ठीक से पार्स करने के लिए " आदेशों से पहले एक बैकस्लैश \ का उपयोग करें
"path\to\maya.exe" -command "python(\"recent=cmds.optionVar(q='RecentFilesList')[-1]; cmds.file (recent, force=True, open=True)\")"
0
L0Lock 1 अक्टूबर 2020, 15:54

1 उत्तर

सबसे बढ़िया उत्तर
  1. आमतौर पर आप एक वर्किंग मेल कमांड प्राप्त करने के लिए "के साथ \" को प्रतिस्थापित करते हैं। तो अगर आप यह काम कर सकते हैं:

    "python(\"recent = cmds.optionVar(q='RecentFilesList')[-1]; cmds.file (recent, open=True)\")"

लेकिन ईमानदार होने के लिए मैंने इसे कमांडलाइन तर्क के रूप में परीक्षण नहीं किया।

  1. आप फ़ाइल कमांड को बल के साथ संशोधित कर सकते हैं:

    cmds.file(recent, force=True, open=True)

1
haggi krey 2 अक्टूबर 2020, 18:39