我剛學到了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