在Windows XP中打开cmd.exe时,会出现一个控制台窗口,其命令提示符如下所示:
“C:\ User and Settings \ Staffer \ My Documents> ”其中s> '>'后面的下划线是光标。
这是Windows XP的默认设置。用户可以使用PROMPT = something或使用set PROMPT = something
来更改它在控制台窗口中,在命令提示符下,输入不带参数的内部命令“prompt”不会返回当前提示字符串的内容。
是否有命令或最好是Python库可以检索命令提示符。如果有一种内置的方法来检索该字符串,我不想编写Python模块。
获取命令提示符字符串的用例是当我使用Python子进程模块运行python程序,然后在子进程运行时返回到同一控制台的命令提示符时,我将光标放在空行上。我可以按Enter键,命令提示符将重新显示;但它看起来好像还没有从子进程返回,这误导了我的用户。
我的应用程序的gui部分的一个解决方案是运行pythonw runapp.py。但是我想知道是否有办法通过使用已经制作的DOS命令,Python库,正确使用subprocess.Popen()和communic()调用子进程来获得干净的命令提示符?
答案 0 :(得分:1)
不确定它是否有帮助但是如果从命令提示符输入“SET”,您将看到一个环境变量列表,包括当前的PROMPT(但如果它是默认提示,它将不会出现在列表中)。
答案 1 :(得分:1)
从命令行:
c:\>echo %prompt%
$P$G
来自Python:
>>> import os
>>> os.environ["PROMPT"]
'$P$G'
(http://docs.python.org/library/os.html#process-parameters)
<强> [编辑] 强>
啊,我错过了你的编辑。听起来你想要做的就是在后台运行脚本。我相信你正在寻找带有/ b选项 - http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/start.mspx?mfr=true
的Windows“开始”命令答案 2 :(得分:0)
我认为你正在寻找这个:
import os
print os.getcwd()