接到网友的一个提问,python怎么样与shell进行交互。
在摸索了一番之后,这里举几个例子,其他的原理文章,请看参考连接。
shell交互
shell代码距离
read -p "please input arg 1: " ARG1
read -p "please input arg 2: " ARG2
echo "arg 1: $ARG1, arg 2: $ARG2"
python代码
import subprocess
import sys
child1 = subprocess.Popen(["/bin/bash","test1.sh"], stdout=subprocess.PIPE)
out = child1.communicate()
print(out)
bat交互
@echo off
set /p arg1=Enter the first number:
set /p arg2=Enter the second number:
rem get first number
echo %arg1%
rem get second number
echo %arg2%
python代码
import subprocess
import os
bat_path = os.path.abspath(os.path.dirname(__file__))
subprocess.call("test.bat", cwd=bat_path)
在跟Windows交互调用bat的时候,需要注意使用call这个方法