2012-10-31 48 views
5

有什麼辦法可以告訴argparse不要吃引號?Python的argparse參數與報價

例如,當我用引號給出一個參數時,argparse僅將引號內的內容作爲參數。我想捕捉的引號,以及(無需逃離他們在命令行上。)

pbsnodes -x | xmlparse -t "interactive-00" 

產生

interactive-00 

我想

"interactive-00" 

回答

9

我認爲這是shell吃它們,所以python實際上從來不會看到它們。在命令行上轉義它們可能是您唯一的選擇。

如果它是\"backslash\"風格逃逸你不喜歡某種原因,那麼這種方式應改爲工作:

pbsnodes -x | xmlparse -t '"interactive-00"' 
+2

這也正是如此。 shell將引用看作是「即使它包含空格,也要接受這裏的任何內容」。它是這樣做的。這是在shell中引用*的地方。 – kindall

+0

無賴。好,謝謝。 – denvaar