Bonjour,


j'aimerai savoir s'il est possible d'utiliser des commandes spéciales via le ftp de python.

J'essaie de me connecter à un as/400.

la commande à utiliser après s'être authentifier sur la bestiole est la suivante :
quote rcmd <commande AS/400>

Ceci dans un script batch windows marche très bien :
ftp <host>
USER MonUsr
MonPW
quote rcmd <commande AS/400>
quit


Hors je ne trouve pas la méthode qui me permettrai de faire ceci via python.
En effet la ligne "quote rcmd <commande AS/400>" n'est pas utilisable.


J'ai essayé le putline, sendcmd, putcmd, .. mais rien n'y fait :/

Si quelqu'un a une idée

edit: Voici le code utilisé
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
session = ftplib.FTP(host)
session.login(user, password)
print session.getwelcome()
session.putline('quote rcmd addlible ftptools')
session.quit()
Voici la stack erreur générée :
220-QTCP at ALTE400.
220 Connection will close if idle more than 5 minutes.
Traceback (most recent call last):
File "C:\Python26\lib\idlelib\Debugger.py", line 67, in run
return self.idb.run(*args)
File "C:\Python26\lib\bdb.py", line 368, in run
exec cmd in globals, locals
File "C:\Documents and Settings\xxx\Bureau\xxx- travail en cours\09 - Dev\02 - remote ftp\ftp.py", line 18, in <module>
session.quit()
File "C:\Python26\lib\ftplib.py", line 568, in quit
resp = self.voidcmd('QUIT')
File "C:\Python26\lib\ftplib.py", line 248, in voidcmd
return self.voidresp()
File "C:\Python26\lib\ftplib.py", line 223, in voidresp
resp = self.getresp()
File "C:\Python26\lib\ftplib.py", line 218, in getresp
raise error_perm, resp
error_perm: 500 Subcommand QUOT not valid.
edit : pb résolu.
il faut utiliser la commande :

session.sendcmd('rcmd sbmjob ...')