У меня есть раздел питона, который я ударяю головой о стену. Я не разработчик/программист на Python. Однако мне было поручено переделать некоторые функции в этом приложении, и я не могу понять, что это ищет. У меня есть программа bash, support.sh, которая называется. Он делает то же самое, что и старый, но я удалил 500 строк бесполезного кода. Он собирает кучу журналов и другую информацию, а затем я rsync некоторые каталоги и через них в/tmp/"$ bundleName", который затем создает zip.Что это за функция python ищет?
Для запуска процесса существует сценарий python, который вызывается, и который вызывает мой сценарий bash. Вот сегмент, который проверяет мой bash, но я понятия не имею, что он ищет, чтобы обозначить завершение моей программы bash. Как только я знаю, что он ищет, чтобы обозначить мой bash, я добавлю, что до конца моей программы это означает, что это сделано.
Вот питон, который ищет статус моего Баш:
def checkSupportBundleGenerationStatus(bundle):
try:
f=open(SUPPORT_BUNDLE_DIR + bundle + '/' + SUPPORT_BUNDLE_LOG,'r')
blog=f.read()
f.close()
except:
sendError("Invalid bundle")
log.message(cgiutil.LOG_INFO, "Log bundle generation output so far %r bytes." % len(blog))
filename=None
lines = blog.splitlines()
for l in lines:
pair = l.split(':', 1)
if len(pair) == 2 and pair[0] == 'File':
filename=pair[1].strip()
break
blog=re.sub(r'\rPreparing Files: [-\\|/]','',blog)
if filename:
dlPath=filename.replace(SUPPORT_BUNDLE_DIR,'',1)
try:
fileSize=os.stat(filename).st_size
except:
sendError('Error accesing bundle zip')
lastSlash=filename.rfind("/")
if lastSlash != -1 :
filename=filename[lastSlash+1:]
dlMessage='''<form action="%s" method="post">
<input type="hidden" name="HTTP_AUTHORIZATION" value="%s"/>
%s (%s) is ready for download. <input type="submit" value="Download">
</form>''' % (
buildGetQuery(downloadbundle=dlPath),
os.environ['HTTP_AUTHORIZATION'],
filename,
convertBytes(fileSize)
)
sendBundlePage(dlMessage,blog)
else:
sendBundlePage(WAIT_MSG,blog,buildGetQuery(checkbundle=bundle), os.environ['HTTP_AUTHORIZATION'])
Спасибо!
Я не вижу какой-либо части этого кода, вызывает сценарий bash. – user2357112
Он ищет линию формы 'Файл:'. Если он находит это, он запускает весь код после 'if filename:', иначе он переходит в предложение 'else'. –
Barmar
@ user2357112 Этот код запускается _after_ запускает скрипт bash, обрабатывает файл журнала, созданный скриптом. – Barmar