簡體   English   中英

Python:在Windows上執行復雜的命令

[英]Python: executing a complex command on windows

我在Windows上運行命令時遇到問題,而在Linux上卻可以正常運行。

我為您提供了上下文,但這不是理解我的問題所必需的:我在批處理模式下使用gimp。

我有一個Python腳本調用callPythonFuScript.py ,它調用另一個Python腳本pythonFu.py ,該腳本執行一個python-fu調用。

callPythonFuScript.py ,當我在pythonFu.py內部pythonFu.py要執行的函數時,將構造命令行。 這是命令行:

gimp-console-2.8 -idf --batch-interpreter python-fu-eval -b 'import sys;sys.path=['.']+sys.path;import pythonFu;pythonFu.myFunction("arg1","arg2","arg3") ' -b 'pdb.gimp_quit(1)'

該命令在Linux上可以正常使用,但是當我嘗試在Windows上運行時,它不起作用。

錯誤消息是:

The opening of C:\Users\myRep\sys; failed : no such file or directory
The opening of C:\Users\myRep\sys.path=['.']+sys.path; failed : no such file or directory
The opening of C:\Users\myRep\"arg1","arg2","arg3")' failed no such file or directory

我假設Windows對字符的解釋與Linux不同。 這個對嗎? 我該如何解決這個問題?

如注釋中所述,您在命令提示符下將其視為參數與將其作為文字字符串傳遞給python傳遞給eval之間存在一個轉義問題:

-b 'import sys;sys.path=["."]+sys.path;import pythonFu;pythonFu.myFunction("arg1","arg2","arg3")'

如果那仍然給您錯誤,則可能您可能需要轉義雙引號:

-b 'import sys;sys.path=[\".\"]+sys.path;import pythonFu;pythonFu.myFunction(\"arg1\",\"arg2\",\"arg3\")'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM