我刚学到了subprocess.check_call()函数。我打算用它来代替我的os.system命令。python子进程“mount”不会提示输入密码
本来,我有我的命令,例如:
os.system("mount -t cifs //source/share /mnt/share -o username=user")
上面的命令会提示输入密码,如果密码正确,将安装驱动器。
不过,如果我尝试:
cmd_string="mount -t cifs //source/share /mnt/share -o username=user"
subprocess.check_call(cmd_string.split(" "), shell=True, stdin=sys.stdin)
它不会询问密码。相反,它只是打印分区。这就像调用没有参数的“mount”命令。
任何想法如何使用check_call并仍然接收来自用户的交互式输入?
也许这个链接http://stackoverflow.com/questions/421206/in-python-how-i-do-use-subprocess-instead-of-os-system将帮助你.. – Manie
顺便说一下,它是'check_call ',而不是'call_check';现在编辑。 –
嗯,感谢您更新错字:P – Patrick