万恶的主管要求写一个针对于阿里云服务器的自动挂载的脚本,其实这种脚本不难,网上找找随便都有,但是比较恶心的是,主管非要求要用python去写,美其名曰“可读性强”。
于是本菜鸟为了绩效就开始写,但是写着写着就到了一个窘境,因为在 fdisk /dev/vdb的时候,是需要连续输入:“n p 1 回车 回车 p w ” 这六个信息需要反馈给系统才能顺利的分区,要是一次交互,到还好办,但是这样一次性要多次交互怎么破?难道必须要用pexpect去实现吗?
使用 os.system("fisk /dev/xvdb << End
n
p
1
p
w
End")
频频报错
本菜鸟环境是python 2.6.6
그냥 하위 프로세스를 사용하세요. 예를 들어 다음 프로그램에서는 이름과 나이를 입력해야 합니다.
으아악다음과 같이 John과 20을 대화식으로 입력하여 위 프로그램을 호출할 수 있습니다.
으아악StackOverflow에 이런 질문이 많아요!
Python을 사용한 대화형 입력/출력
Python 하위 프로세스 및 사용자 상호 작용
Python - 문자열을 subprocess.Popen에 어떻게 전달합니까(stdin 인수 사용)?