2014-09-19 1 views
0

Я пишу скрипт python, который создает файл отправки Condor, записывает на него информацию и затем отправляет его для запуска на Condor ,ОШИБКА: «filetest.submit» не содержит команд «очереди» - нет заданий в очереди

for f in my_range(0, 10, 2): 
     condor_submit.write('Arguments = povray +Irubiks.pov +0frame' + str(f) + '.png +K.' + str(f) + '\n') # '+ stat +' 
     condor_submit.write('Output = ' + str(f) + '.out\n') 
     condor_submit.write('queue\n\n') 

subprocess.call('condor_submit %s' % (fname,), shell=True) 

Что я не понимаю, так это то, что я получаю сообщение об ошибке «Нет очереди».

Я открыл созданный файл и отправить его показывает, как ..

universe=vanilla 
.... (the rest of the header) 
should_transfer_files = yes 
when_to_transfer_files = on_exit 

Arguments = test frame0.pov 
Output = 0.out 
queue 

Arguments = test frame2.pov 

и так далее. Каждый раздел, состоящий из аргумента, вывода и очереди, заканчивается оператором очереди, и он отформатирован так.

Что заставляет его не замечать очереди очереди?

Спасибо!

+0

Вы получаете ту же ошибку, если вы вызываете 'condor_submit filetest.submit' вручную? – tkocmathla

ответ

1

Данные, скорее всего, буферизованы и пока что не находятся в файле отправки. После того, как вы закончите запись в файл отправки, либо закройте файл, либо промойте его перед вызовом condor_submit.

Причина, по которой это происходит после ошибок программы, и вы проверяете ее, потому что файл, вероятно, закрыт либо (a) позже в вашей программе, либо (b) автоматически при выходе из программы.