Perl et FTP : Aller dans un sous dossier et le créer s'il existe pas..

Perl et FTP : Aller dans un sous dossier et le créer s'il existe pas.. - Perl - Programmation

Marsh Posté le 30-04-2008 à 18:45:32    

Bonjour,
 
Je suis en train de modifier un script perl.
 
Cette ligne me fait aller dans un sous dossier :
  $ftp->cwd($ftp_dir) or myerr("Could not change to directory: $ftp_dir." );
 
Et si le dossier n'existe pas, il m'affiche un message d'erreur. Ok.
 
Je voudrais que si le dossier n'existe pas, il le crée, puis qu'il y aille dedans comme prévu.
 
Avec la petite contrainte supplémentaire :
la variable $ftp_dir peut-être du genre "/www/sousdossier", où www existe déjà, mais où sousdossier n'existe pas.  
 
Vous me comprenez ?
 
Alors je vois bien que je dois remplacer ce qu'il y a après "or" par la commande de création de dossier mkdir, mais est-ce que je peut mettre des { } puisqu'il y a plusieurs instructions ? J'avoue que je patauge un peu... je ne connais pas dutout perl, et très peu la programamtion en général. :(
 
:)

Reply

Marsh Posté le 30-04-2008 à 18:45:32   

Reply

Marsh Posté le 01-05-2008 à 14:40:21    

On peut supposer que ton $ftp est un objet de la classe Net::ftp, mais ca demande confirmation. Verifies cela lorsqu'il est créé.
Si c'est le cas, la doc de la classe: http://perldoc.perl.org/Net/FTP.html indique les methodes utilisables, et tu as: mkdir (doc aussi ici: http://search.cpan.org/~gbarr/libnet-1.22/Net/FTP.pm )
Tu vas donc pouvoir faire un $ftp->mkdir("$ftp_dir", 1); quand le repertoire n'existe pas, pour le creer.
Je te laisse la charge de coder ce qu'il faut pour ne creer le repertoire que lorsqu'il n'existe pas, parce que c'est ici un forum d'aide a la prog, pas un forum ou on obtient le code tout fait.
A+,


Message édité par gilou le 01-05-2008 à 14:46:55

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 01-05-2008 à 14:48:04    

Merci de ta réponse.
 
Oui, la commande spécifique, je l'avais trouvée, mais honnêtement, je ne vais pas apprendre le perl juste pour un micro projet. Tu me comprendra ;)
 
Et je te comprends aussi quand tu dis que le forum n'est pas là pour coder les projets des autres. :)
 
Donc j'abandonne. Rien n'est grave !
 
Bien à vous :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed