"system %" in python

Bash, Perl, Python, Ruby, ...

"system %" in python

Messaggioda desperados » 06/04/2016, 12:17

buondì a tutti
ho un gateway con endian firewall, dove non si aggiornano le liste di dansguardian:

Codice: Seleziona tutto
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE---------------- Traceback ---------------
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE-Remove tmpdir: /var/tmp/tmpueTLgp
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-Error firing action dansguardianlistsupdate.restart: Could not decompress.
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART---------------- Traceback ---------------
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-Traceback (most recent call last):
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/job/engine_jobs.py", line 193, in _fire_action
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    result = action.action(options) # Exec the action
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/job/engine_actions.py", line 161, in action
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    return _action(job, options)
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/job/job.py", line 79, in wrapped_f
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    return fn(job, *args, **argv)
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/restartscripts/dansguardianlistsupdate.py", line 155, in restart
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    DownLoadJob.restart(self, options)
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/job/job.py", line 79, in wrapped_f
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    return fn(job, *args, **argv)
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/job/generic/downloadjob.py", line 717, in restart
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/job/job.py", line 79, in wrapped_f
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    return fn(job, *args, **argv)
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/restartscripts/dansguardianlistsupdate.py", line 131, in start
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    DownLoadJob.start(self,options)
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/job/generic/downloadjob.py", line 664, in start
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    self.warning(
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-  File "/usr/lib/python2.4/site-packages/endian/job/generic/downloadjob.py", line 472, in post_un_compress
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-    except Exception, e:
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-Exception: Could not decompress.
Apr  6 13:03:14 an-frw254 jobsengine[29578]: DANSGUARDIANLISTSUPDATE.RESTART-


cercando e giocando con gli script ho risolto trasformando la riga

Codice: Seleziona tutto
ret = system("tar xzf '%s' -C '%sdir' > /tmp/hallo" % (url["tmp_file"], url["tmp_file"]))


in

Codice: Seleziona tutto
ret = system("tar xzf '%s' -C '%sdir' > /tmp/hallo")


quindi tagliando dal % in poi, però vorrei capire cos'ho fatto e a cosa serve la seconda parte del comando :)
grazie mille
- Potrebbe esser peggio. - E come? - Potrebbe piovere!
desperados
Hero Member
Hero Member
 
Messaggi: 753
Iscritto il: 22/02/2008, 8:55

Re: "system %" in python

Messaggioda marcomg » 06/04/2016, 13:50

Quella parte sostituisce le due %s nelle stringhe con le variabile date (o meglio, elementi di un dizionario) nella tupla.
Windows is what you open when you want fresh air from outside.
Avatar utente
marcomg
Global Moderator
Global Moderator
 
Messaggi: 5523
Iscritto il: 22/08/2011, 18:54

Re: "system %" in python

Messaggioda desperados » 06/04/2016, 14:17

uhm e quindi come fa' a funzionare??? bho farò qualche altra prova, intanto grazie
- Potrebbe esser peggio. - E come? - Potrebbe piovere!
desperados
Hero Member
Hero Member
 
Messaggi: 753
Iscritto il: 22/02/2008, 8:55

Re: "system %" in python

Messaggioda marcomg » 06/04/2016, 15:06

Infatti me lo chiedo...
Windows is what you open when you want fresh air from outside.
Avatar utente
marcomg
Global Moderator
Global Moderator
 
Messaggi: 5523
Iscritto il: 22/08/2011, 18:54

Re: "system %" in python

Messaggioda desperados » 07/04/2016, 12:51

bho stamattina lo script sembra aver aggiornato le definizioni

adesso ho provato a sostituire con:

Codice: Seleziona tutto
cmd = "tar xzf "+url["tmp_file"]+" -C "+url["tmp_file"]+" > /tmp/hallo")
ret = system(cmd)


e mi sembra funzionare
- Potrebbe esser peggio. - E come? - Potrebbe piovere!
desperados
Hero Member
Hero Member
 
Messaggi: 753
Iscritto il: 22/02/2008, 8:55


Torna a Scripting

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite