.bat文件里的内容用python代码实现

@echooncd/dE:\test\rebuildShaderpythonRebuildShaders.py以上内容怎么用python代码实现,比如用os.system... @echo on
cd /d E:\test\rebuildShader
python RebuildShaders.py
以上内容怎么用python代码实现,比如用os.system()之类的方法实现
展开
 我来答
bdwisyou7d
推荐于2018-04-10 · TA获得超过1.3万个赞
知道大有可为答主
回答量:3774
采纳率:81%
帮助的人:1063万
展开全部
另存成一个批处理。然后os.system("newbatch.bat")

如果完成的写可以这样
open("tmp.bat","wb").write("""\
@echo on
cd /d E:\test\rebuildShader
python RebuildShaders.py
del tmp.bat
""")
os.system("tmp.bat")
追问
怎么判断一个.bat文件是否执行完成,(也就是执行到 del tmp.bat只后)
追答
嗯。你可以加一个状态值
比如一开始 echo 1>state.txt
每执行一步,就做一次
echo 2>>state.txt
echo 3 >>state.txt
是不是用echo我也没有试过。原来似乎是可以的。这样就将状态记录到一个文件里,你检查文件就知道了。
鑫福海参坊
2013-05-31 · TA获得超过145个赞
知道答主
回答量:100
采纳率:100%
帮助的人:37.8万
展开全部
import os
from subprocess import call
os.chdir('/d')

call("E:\test\rebuildShader", shell=True)
call("/usr/bin/python RebuildShaders.py", shell=True)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2016-04-10
展开全部
1、首先要遍历文件夹使用os.walk
2、满足条件的文件进行copy,copy到指定目录,这时可以使用很多种方法。个人使用的os.system('copy')
3、文件处理使用自己写的C语言函数,需要同上,很多方法。
使用过程中还有一些简单的正则表达式。
参考代码如下:
import os
import re
import win32api
Pattern=0
def Mypattern(Pfilename):
return len(Pattern.findall(Pfilename))
def VisitDir(path):
global SubNum
for root,Dirs,files in os.walk(path):
for file in files:
if Mypattern(file):
SubNum+=1
print os.path.join(root,file)
filepath=os.path.join(root,file)
filepath=filepath+r' '+r'D:\Xpath\thesaugb.dbz'
print filepath
# os.system ("copy %s %s"%(filepath,filename2))
os.system("D:\Test\NewConsole.exe %s"%filepath)

if __name__=="__main__":
path=r"D:\Pkw"
filename2=r'D:\Test'
RecordText=open(r'D:\Record.txt','r+')
Pattern=re.compile(r'^[gG][fF]\w*.sgs.txt$')
SubNum=0
VisitDir(filename2)
# win32api.ShellExecute(0,'open',r'D:\Xpath\NewConsole.exe',filepath,'',1)
print SubNum
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式