Enfin avant de chercher plus loin, j'aimerais savoir si vous obtenez le même
comportement en essayant d'effacer un répertoire non vide sur free ou
autre. Pour ceux qui ne savent pas comment utiliser le module (pas
compliqué...), je peux mettre un bout de code.
Mais je ne vois pas trop d'où peut venir l'erreur dans mon programme, je
fais un rmdir d'un répertoire tout bête qui existe. Pas d'histoire de lien
symbolique... Si ça peut jouer, je suis en mode de transfert binaire (a
priori non, mais je le dis quand même).
Merci d'avance,
Julien
--
"Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Tribulations Parallèles
Tribulations Parallèles wrote:
J'ai regardé dans le code de rmdir, on y trouve:
Au fait, le code en question se trouver à /usr/lib/perl5/5.8.6/Net/FTP.pm. En effet, ma version de Perl avec perl -v: This is perl, v5.8.6 built for i386-linux
Julien -- "Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).
Tribulations Parallèles wrote:
J'ai regardé dans le code de rmdir, on y trouve:
Au fait, le code en question se trouver à /usr/lib/perl5/5.8.6/Net/FTP.pm.
En effet, ma version de Perl avec perl -v:
This is perl, v5.8.6 built for i386-linux
Julien
--
"Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).
Au fait, le code en question se trouver à /usr/lib/perl5/5.8.6/Net/FTP.pm. En effet, ma version de Perl avec perl -v: This is perl, v5.8.6 built for i386-linux
Julien -- "Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).
Alexandre Jaquet
Tribulations Parallèles wrote:
J'ai regardé dans le code de rmdir, on y trouve:
Au fait, le code en question se trouver à /usr/lib/perl5/5.8.6/Net/FTP.pm. En effet, ma version de Perl avec perl -v: This is perl, v5.8.6 built for i386-linux
Julien
Peut être un problème de droit ...
Alexandre Jaquet
Tribulations Parallèles wrote:
J'ai regardé dans le code de rmdir, on y trouve:
Au fait, le code en question se trouver à /usr/lib/perl5/5.8.6/Net/FTP.pm.
En effet, ma version de Perl avec perl -v:
This is perl, v5.8.6 built for i386-linux
Au fait, le code en question se trouver à /usr/lib/perl5/5.8.6/Net/FTP.pm. En effet, ma version de Perl avec perl -v: This is perl, v5.8.6 built for i386-linux
Julien
Peut être un problème de droit ...
Alexandre Jaquet
Tribulations Parallèles
Alexandre Jaquet wrote:
Peut être un problème de droit ...
C'est pas ça (j'ai fait un chmod 777 sur le répertoire). Je me remets à chercher dès que j'ai un peu de temps.
Julien -- "Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).
Alexandre Jaquet wrote:
Peut être un problème de droit ...
C'est pas ça (j'ai fait un chmod 777 sur le répertoire).
Je me remets à chercher dès que j'ai un peu de temps.
Julien
--
"Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).
C'est pas ça (j'ai fait un chmod 777 sur le répertoire). Je me remets à chercher dès que j'ai un peu de temps.
Julien
Dans le sens ou free n'autorise pas la suppression complète du repertoire. Tu as testé ton script sur un autre serveur ?
Alexandre Jaquet
Tribulations Parallèles
Alexandre Jaquet wrote:
Dans le sens ou free n'autorise pas la suppression complète du repertoire. Tu as testé ton script sur un autre serveur ?
Merci pour ta réponse. Je viens d'essayer sur le serveur ftp de la poste. Effectivement, je n'obtiens pas l'erreur précédente, qui je le rappelle, était:
Deep recursion on subroutine "Net::FTP::rmdir" at /usr/lib/perl5/5.8.6/Net/FTP.pm line 612.
Ça marche parfaitement, en faisant: $ftp->rmdir("directory", "1")
<interlude> et bizarrement, pas $ftp->rmdir("directory", 1), qui me donne un comportement bizarre, pourtant dans la page man je trouve: rmdir ( DIR [, RECURSE ]) Remove the directory with the name "DIR". If "RECURSE" is true then "rmdir" will attempt to delete everything inside the directory.
Or j'avais compris que 1 ne pouvait être converti en autre chose que quelque chose de true en Perl... De toute façon, les erreurs obtenues en faisant 1 sans guillemets étaient insensées (du style: "Cannot remove directory recursively coucou: Directory not empty"). </interlude>
En revanche, en faisant exactement la même chose sur Free, ça plante, j'obtiens toujours le même message d'erreur "Deep recursion". Dans le code de rmdir, il y a:
my @filelist = grep { !/^.{1,2}$/ } $ftp->ls($dir);
Visiblement, c'est le ls qui pose problème, il renvoie n'importe quoi (cette liste très longue mise dans mon post initial). Je vais envoyer un mail à Free pour voir.
Julien -- "Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).
Alexandre Jaquet wrote:
Dans le sens ou free n'autorise pas la suppression complète du
repertoire. Tu as testé ton script sur un autre serveur ?
Merci pour ta réponse.
Je viens d'essayer sur le serveur ftp de la poste. Effectivement, je
n'obtiens pas l'erreur précédente, qui je le rappelle, était:
Deep recursion on subroutine "Net::FTP::rmdir"
at /usr/lib/perl5/5.8.6/Net/FTP.pm line 612.
Ça marche parfaitement, en faisant:
$ftp->rmdir("directory", "1")
<interlude>
et bizarrement, pas $ftp->rmdir("directory", 1), qui me donne un
comportement bizarre, pourtant dans la page man je trouve:
rmdir ( DIR [, RECURSE ])
Remove the directory with the name "DIR". If "RECURSE" is true
then
"rmdir" will attempt to delete everything inside the directory.
Or j'avais compris que 1 ne pouvait être converti en autre chose que quelque
chose de true en Perl... De toute façon, les erreurs obtenues en faisant 1
sans guillemets étaient insensées (du style:
"Cannot remove directory recursively coucou: Directory not empty").
</interlude>
En revanche, en faisant exactement la même chose sur Free, ça plante,
j'obtiens toujours le même message d'erreur "Deep recursion".
Dans le code de rmdir, il y a:
my @filelist = grep { !/^.{1,2}$/ } $ftp->ls($dir);
Visiblement, c'est le ls qui pose problème, il renvoie n'importe quoi (cette
liste très longue mise dans mon post initial).
Je vais envoyer un mail à Free pour voir.
Julien
--
"Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).
Dans le sens ou free n'autorise pas la suppression complète du repertoire. Tu as testé ton script sur un autre serveur ?
Merci pour ta réponse. Je viens d'essayer sur le serveur ftp de la poste. Effectivement, je n'obtiens pas l'erreur précédente, qui je le rappelle, était:
Deep recursion on subroutine "Net::FTP::rmdir" at /usr/lib/perl5/5.8.6/Net/FTP.pm line 612.
Ça marche parfaitement, en faisant: $ftp->rmdir("directory", "1")
<interlude> et bizarrement, pas $ftp->rmdir("directory", 1), qui me donne un comportement bizarre, pourtant dans la page man je trouve: rmdir ( DIR [, RECURSE ]) Remove the directory with the name "DIR". If "RECURSE" is true then "rmdir" will attempt to delete everything inside the directory.
Or j'avais compris que 1 ne pouvait être converti en autre chose que quelque chose de true en Perl... De toute façon, les erreurs obtenues en faisant 1 sans guillemets étaient insensées (du style: "Cannot remove directory recursively coucou: Directory not empty"). </interlude>
En revanche, en faisant exactement la même chose sur Free, ça plante, j'obtiens toujours le même message d'erreur "Deep recursion". Dans le code de rmdir, il y a:
my @filelist = grep { !/^.{1,2}$/ } $ftp->ls($dir);
Visiblement, c'est le ls qui pose problème, il renvoie n'importe quoi (cette liste très longue mise dans mon post initial). Je vais envoyer un mail à Free pour voir.
Julien -- "Allez, Monsieur, allez, et la foi vous viendra." (D'Alembert).