我还不熟悉脚本,并且不确定完成我想要做的事情的最佳方法。这将是我尝试编写的第一个python脚本。请注意,我正在使用 Python2.7 。
我想为给定参数的用户编写批处理文件。这个论点将成为一条道路。此路径将每天更改并用于执行作业测试。我想用Nightly.bat "build path"
这就是我想要完成的事情:
1。批处理文件确保路径存在健康检查 2.批处理文件使用给定变量执行python文件 3. Python文件在testrun脚本中使用构建路径查找字符串,并将用给定变量替换该路径 4.Batch文件执行testrun selenium脚本。
以下是代码Python代码:
test1.txt内容:
blah
This is a first string
nightly.py内容:
import sys
import shutil
import os
import re
tf = open('tmp', 'a+')
string = "This is "
with open('test1.txt') as f:
for line in f.readlines():
string = re.sub ('This is .*', 'This is a second string', string)
shutil.copy('test1.txt', 'tmp')
tf.write(string)
f.close()
tf.close()
执行nightly.py文件后,这是tmp文件内容:
blah
This is a first stringThis is a second String
我需要将This is a first string
替换为This is a second string
最后,tmp文件应包含以下内容:
blah
This is a second string
感谢您继续尝试。
*****************************
* Updated for Kirbyfan64sos *
*****************************
nightly.py内容:
import sys
import shutil
import os
tf = open('tmp', 'a+')
with open('test1.txt') as f:
for line in f.readlines():
if line == 'This is*':
line = 'This is a second string'
tf.write(line)
f.close()
tf.close()
shutil.copy('tmp', 'test1.txt')
os.remove('tmp')
答案 0 :(得分:1)
代码应如下所示:
import sys
tf = open('tmp', 'a+')
with open('WP8974_AudioDecode.html') as f:
for line in f.readlines() do:
if line == '<td>\\frosty\*</td>':
line = '<td>\\frosty\' + sys.argv[1] + '</td>'
tf.write(line)
f.close()
shutil.copy('tmp', 'WP8974_AudioDecode.html')
os.remove('tmp')
答案 1 :(得分:1)
我终于找到了答案......
在执行Nightly.py之前test1.txt:
blah
blah
This is a first string
blah
blah
BTW标签使用notepad ++
对代码产生影响import sys
import os
import re
import shutil
tf = open('tmp', 'a+')
with open('test1.txt') as f:
for line in f.readlines():
build = re.sub ('This is.*','This is a second string',line)
tf.write(build)
tf.close()
f.close()
shutil.copy('tmp', 'test1.txt')
os.remove('tmp')
执行Nightly.py后test1.txt:
blah
blah
This is a second string
blah
blah