我有一個使用pexpect啓動CLI程序的腳本。它有點像一個shell,你可以在其中輸入一些命令。python,在終端中設置終端類型
我認爲,我有這個問題,該程序使用彩色提示。
這是我做的
import pprint
import pexpect
1 a = pexpect.spawn('program')
2 a.expect("prompt>")
3 print "---------start------------"
4 print(a.before)
5 a.sendline("command")
6 a.expect("prompt>")
7 print "---------before------------"
8 pprint.pprint(a.before)
9 print "---------after------------"
10 pprint.pprint(a.after)
這是輸出:
> python borken.py
---------start------------
A lot of text here from the enjoying programs start-up, lorem ipsum ...
---------before------------
' \x1b[0m\x1b[8D\x1b[K\x1b[1m\x1b[34m'
---------after------------
'prompt>'
出於某種原因,第一個提示彩色編碼在第8行borkens起來的東西,a.before是亂碼,正常打印不起作用,即使我看到第5行的命令實際上產生了很多輸出。
有人知道問題出在哪裏,或者是否可以設置終端類型以避免顏色?
我使用tcsh外殼
任何想法爲什麼產生env = xxx參數在這裏不起作用? – Strin 2016-01-12 05:27:02