Création
d'entreprise
Posez votre question Signaler

Impossible de supprimer un fichier sur FTP [Résolu]

ordi75 - Dernière réponse le 1 janv. 2012 à 22:16
Bonjour à tous,
Je voulais tester le ftp de free pour monter un ptit site web, état novice j'ai décidé de réaliser des tests.
Pour cela, j'ai eu la mauvaise idée de poser le premier fichier que j'ai trouvé sans réfléchir, suite auxquel un problème est apparu.
Ce fichier possède un nom composer d'espace, caractère spéciaux... après coup, j'ai découvert que ce genre de nom poser des problèmes, en effet, je ne peux plus renommer et impossible de changer les droits.
Lorsque j'essaye de supprimer le répertoire, je reçois ce message :
550 nom du repertoire : Directory not empty
Lorsque j'essaye de supprimer le fichier, je reçoit le message suivant :
550 nom du fichier : No such or file directory
Alors que le fichier est bien présent !!
Maintenant il m'est impossible de supprimer ce fichier, j'ai vraiment tout essayé mais je n'arrive pas à le supprimer.
Si quelqu'un peux m'aider à enfin supprimer ce fichier car moi je commence à désespérer, je ne sais vraiment plus quoi faire.
Je vous en remercie d'avance.
Lire la suite 

Impossible de supprimer un fichier sur FTP »

45 réponses
Réponse
+14
moins plus
Vala, g tout viré!

A la place de unlink(), g utilisé la fonction (merci Google!):

<?php
/**
 * rm() -- Vigorously erase files and directories.
 *
 * @param $fileglob mixed If string, must be a file name (foo.txt), glob pattern (*.txt), or directory name.
 *                        If array, must be an array of file names, glob patterns, or directories.
 */
function rm($fileglob)
{
    if (is_string($fileglob)) {
        if (is_file($fileglob)) {
            return unlink($fileglob);
        } else if (is_dir($fileglob)) {
            $ok = rm("$fileglob/*");
            if (! $ok) {
                return false;
            }
            return rmdir($fileglob);
        } else {
            $matching = glob($fileglob);
            if ($matching === false) {
                trigger_error(sprintf('No files match supplied glob %s', $fileglob), E_USER_WARNING);
                return false;
            }      
            $rcs = array_map('rm', $matching);
            if (in_array(false, $rcs)) {
                return false;
            }
        }      
    } else if (is_array($fileglob)) {
        $rcs = array_map('rm', $fileglob);
        if (in_array(false, $rcs)) {
            return false;
        }
    } else {
        trigger_error('Param #1 must be filename or glob pattern, or array of filenames or glob patterns', E_USER_ERROR);
        return false;
    }

    return true;
}

rm("monFichier");

?>
Configuration: Windows XP Firefox 2.0.0.6
Ajouter un commentaire
Réponse
+4
moins plus
Bonjour,

c'était ptet un pb côté Free, g eu d soucis hier et ce matin pour écraser un fichier, mais ça a fini par fonctionner un peu plus tard.

Sinon pour effacer ton fichier côté serveur, utilise la fonction unlink() de php:

1. Ouvrir le bloc notes (ou un autre éditeur texte)
2. Ajouter ce code PHP :
<? unlink("monRepertoire/monFichier") ?>
3. enregistrer le fichier avec l'extension .php (supprimer.php par exemple)
4. Transférer ce fichier sur le serveur
5. Exécuter le fichier (en visitant la page dans un navigateur).
Ajouter un commentaire
Réponse
+1
moins plus
Je pense pas que ce soit nécessaire de suprrimer ce compte, c quel fichier qui te pose problème exactement?

Eventuellement, tu me poste en mp l'accès à ce compte pour voir avant de le supprimer et tu changeras le mdp après que g jeté un coup d'oeil ;o)

T'as essayé:

<? unlink("/mnt/125/sda/1/a/monRepertoire/monFichier") ?>

?
Ajouter un commentaire
Réponse
+1
moins plus
Bonjour,

Ayant le même problème que ordi75 j'ai essayé de créer les fichier .php d'abord la fonction unlink puis la fonction rm mais aucune ne marche helas. Je met en lien le code que j'ai inscris ainsi que l'adresse du fichier à supprimer (en plus c'est un pote qui à mis ce mp3 de m...de sur mon ftp !!).

adresse du fichier : tmouss.free.fr/protected_area/Timouss/arf/- Sniper && Diams - J'aime pas .mp3

mon fichier rm :

<?php
/**
* rm() -- Vigorously erase files and directories.
*
* @param $fileglob mixed If string, must be a file name (foo.txt), glob pattern (*.txt), or directory name.
* If array, must be an array of file names, glob patterns, or directories.
*/
function rm($fileglob)
{
if (is_string($fileglob)) {
if (is_file($fileglob)) {
return unlink($fileglob);
} else if (is_dir($fileglob)) {
$ok = rm("$fileglob/*");
if (! $ok) {
return false;
}
return rmdir($fileglob);
} else {
$matching = glob($fileglob);
if ($matching === false) {
trigger_error(sprintf('No files match supplied glob %s', $fileglob), E_USER_WARNING);
return false;
}
$rcs = array_map('rm', $matching);
if (in_array(false, $rcs)) {
return false;
}
}
} else if (is_array($fileglob)) {
$rcs = array_map('rm', $fileglob);
if (in_array(false, $rcs)) {
return false;
}
} else {
trigger_error('Param #1 must be filename or glob pattern, or array of filenames or glob patterns', E_USER_ERROR);
return false;
}

return true;
}

rm("- Sniper && Diams - J'aime pas .mp3");

?>

J'ai essayé aussi de remplacer rm("- Sniper && Diams - J'aime pas .mp3"); par rm("/mnt/167/sdb/b/c/tmouss/protected_area/Timouss/arf/- Sniper && Diams - J'aime pas .mp3"); et aussi en entrant l'adresse complete du fichier tel qu'elle apparait dans l'explorateur. A chaque fois un message d'erreur me signale que le fichier n'a pas été trouvé...

Est-ce que le fait que le repertoire protected area soit protégé par une fonction htaccess peut poser problème ?

Merci d'avance pour toute réponse eclairante

t-mouss
Pi_Xi- 22 oct. 2007 à 12:09
Bonjour,

tu dois passer seulement le nom du fichier comme paramètre dans rm() si le fichier .php est au même niveau que ton mp3. Vérifies bien que le mp3 et le fichier .php soient au même niveau ainsi que le nom du fichier problématique.

As-tu d'autres mp3 sur le server? car tu peux aussi passer *.mp3 qui effacera TOUS tes mp3.
Ajouter un commentaire
Réponse
+1
moins plus
Merci, marche nikel
surgat - 5 oct. 2009 à 09:40
Yop tous le monde

Je viens de lire les commentaire du dessus et j'apporte ma contribution ;-)

Donc pour tous ceux qui n'arrive pas a supprimer un fochier ou dossier sur un ftp

Le probleme de l'erreur 550 c'est qu'il ne peut pas effacé. Ce problème est du au fait que vous ne voyez pas les fichier caché du genre .htaccess et autre.

La solution consiste a faire afficher ces fichiers. Ne chercher pas autre chose. Il faut les afficher!

Avec ftp expert 3, par exemple faite ceci:

1) - cliquez sur "Fichier" puis "Connecter"
2) - Clic droit sur "Connexion" puis "Propriétés"
3) - Dans la boite de dialogue qui vien de s'ouvrir, il 'y a, a gauche une arborescence, clicquez sur "Dossier"
4) - maintenant a droite de l'arborescence, cliquez sur "Utiliser des valeur personnalisé"
5) - Déroulez le menu déroulant juste en dessous est choisisez "Afficher les fichier cachée" (on appelle aussi cela "-latr" )
6) - cliquez sur "Appliquer"
coco - 10 déc. 2010 à 09:51
merci surgat marche nikel
Ajouter un commentaire
Réponse
+1
moins plus
Bonjour
j'avait exactement le meme probleme un dossier ne se supprimait pas et j'ai perdu bcp de temps...
Finalement j'ai trouvé un logiciel FTP qui efface les dossiers en cascade... c'est Kamzy FTP (gratuit)
donc meme s'il y a plein de fichier ou dossier il les effaces
http://www.kamzy.com/kamzyftp.html
Fred - 4 mai 2010 à 20:32
Cette pub pour le logiciel me semble mal venu...
Seule la version pro (payante) permet l'effacement en cascade !
PechMayneau- 24 déc. 2011 à 18:01
tout a fait j'ai télécharger ce logiciel et il me demande de payer la version Pro, en effet pub mal venu ...
Ajouter un commentaire
Réponse
+0
moins plus
En faite, je voulais tester mon ftp, comme je suis novice, je me suis dis de tester FileZila et voir si c'étais facile ou pas de déposer des fichiers dessus.

J'ai alors pris le premier fichier que j'ai eu sous les yeux (.mp3) en y réfléchissant bien maintenant c'était vraiment pas une bonne idée, le nom du fichier est composée de plusieurs caractéres spéciaux (des espaces, des tirets...) et d'après moi c'est ça qui pose problème.

merci.Configuration: Windows XP Internet Explorer 7.0
Pi_Xi- 25 août 2007 à 15:19
Mais justement la fct unlink() peut t'être d'une grande utilité dans ce cas...

T pas le premier qui fait cette erreur, t'inquiète pas, ça se dépanne.

Et FileZilla est un très bon client ftp :o)
PechMayneau- 24 déc. 2011 à 18:28
j ai fais la même connerie que toit et je suis dans de beaux draps maintenant
Ajouter un commentaire
Réponse
+0
moins plus
Oups, désolé, j'avais lu que ta première phrase dans ton avant dernier message.

Oui, il n' y a pas de problème, je te poste ou les accès au compte?

merci encore !!Configuration: Windows XP Internet Explorer 7.0
Pi_Xi- 25 août 2007 à 15:37
tu clic sur mon pseudo :o)
Ajouter un commentaire
Réponse
+0
moins plus
Merci Pi_Xi,

Mon problème est enfin réglée.

Merci encore !!!Configuration: Windows XP Internet Explorer 7.0
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

Je suis un débutant un internet.

J'aimerai savoir si vous pourriez m'aider pour effacer un fichier sur FTP Expert 3 ou Fizilla.

Je me bat la dessus depuis un certain temps.

Je vous remercie d'avance.

Cordialement
lechat57
Ajouter un commentaire
Réponse
+0
moins plus
Re,

tu aurais pu ouvrir un nouveau post ;o)

As-tu pris le temps de lire ce sujet et d'essayer d'en faire qqch?

Je reprends:

1. Ouvre le bloc notes (ou un autre éditeur texte)
2. Ajoute ce code PHP :
<?php
/**
 * rm() -- Vigorously erase files and directories.
 *
 * @param $fileglob mixed If string, must be a file name (foo.txt), glob pattern (*.txt), or directory name.
 *                        If array, must be an array of file names, glob patterns, or directories.
 */
function rm($fileglob)
{
    if (is_string($fileglob)) {
        if (is_file($fileglob)) {
            return unlink($fileglob);
        } else if (is_dir($fileglob)) {
            $ok = rm("$fileglob/*");
            if (! $ok) {
                return false;
            }
            return rmdir($fileglob);
        } else {
            $matching = glob($fileglob);
            if ($matching === false) {
                trigger_error(sprintf('No files match supplied glob %s', $fileglob), E_USER_WARNING);
                return false;
            }      
            $rcs = array_map('rm', $matching);
            if (in_array(false, $rcs)) {
                return false;
            }
        }      
    } else if (is_array($fileglob)) {
        $rcs = array_map('rm', $fileglob);
        if (in_array(false, $rcs)) {
            return false;
        }
    } else {
        trigger_error('Param #1 must be filename or glob pattern, or array of filenames or glob patterns', E_USER_ERROR);
        return false;
    }

    return true;
}

rm("monFichier");

?>
Modifie la dernière ligne en remplaçant "monFichier" par le nom du fichier à effacer

3. enregistre le fichier avec l'extension .php ("supprimer.php" par exemple)
4. Transfére ce fichier sur le serveur
5. Exécute le fichier (en visitant la page dans un navigateur).
PechMayneau- 24 déc. 2011 à 18:31
moi je l'ai fais et j'ai ça comme message d'erreure /

Warning: No files match supplied glob Jacques Brel- Amsterdam.mp3 in /mnt/110/sda/b/0/ucim/P/delete.php on line 22


on dirait que c'est Free qui a bloqué ce fichier
Ajouter un commentaire
Réponse
+0
moins plus
MERCI BEAUCOUP!!
Ajouter un commentaire
Réponse
+0
moins plus
J'ai eu le même cas... j'ai effacé 95% des fichiers à l'intérieur du repertoire que je voulais effacer et puis pas moyen pour les deux derniers sous repertoires.

J'ai lancé le petit fichier php ci-dessus et il me dit: "Permission denied in /***/"

J'ai renommé le repertoire et je vis avec depuis :-)
Ajouter un commentaire
Réponse
+0
moins plus
j ai le mm pb sauf que je suis pas heberge sous un serveur gratuit et jai ka mm esaye ttes les commandes ci dessus rien je 'narriv tjr pa efacer des fichiers indesirables sur mn serveur ftp
Ajouter un commentaire
Réponse
+0
moins plus
Cher internaute
je pensez que a chaque fois modifier le fichie rpour supprimer un fichier c'etait tros durs
jai fait une petite modification . comme tout le monde aurait pu le faire

Jai un peu modifier le code pour qu'il soit plus facile ( surtout pour seut qui on plusieur fichier )
<?php
/**
 * rm() -- Vigorously erase files and directories.
 *
 * @param $fileglob mixed If string, must be a file name (foo.txt), glob pattern (*.txt), or directory name.
 *                        If array, must be an array of file names, glob patterns, or directories.
 */
function rm($fileglob)
{
    if (is_string($fileglob)) {
        if (is_file($fileglob)) {
            return unlink($fileglob);
        } else if (is_dir($fileglob)) {
            $ok = rm("$fileglob/*");
            if (! $ok) {
                return false;
            }
            return rmdir($fileglob);
        } else {
            $matching = glob($fileglob);
            if ($matching === false) {
                trigger_error(sprintf('No files match supplied glob %s', $fileglob), E_USER_WARNING);
                return false;
            }      
            $rcs = array_map('rm', $matching);
            if (in_array(false, $rcs)) {
                return false;
            }
        }      
    } else if (is_array($fileglob)) {
        $rcs = array_map('rm', $fileglob);
        if (in_array(false, $rcs)) {
            return false;
        }
    } else {
        trigger_error('Param #1 must be filename or glob pattern, or array of filenames or glob patterns', E_USER_ERROR);
        return false;
    }

    return true;
}

rm($_GET['fichier']);

?>

Ouvrez votre bloc note
enrengistrer avec l'extension .php
/!\ Ne modifier aucune ligne de ce code /!\ ( sauf si vous en avez vraiment besoins , mais ceci risque d'entrainer des "bug" )
transférer ce fichier sur votre serveur
Exécute le fichier (en visitant la page dans un navigateur).
O.o , ca marche pas . ( Patience on y vien )
une fois que vous etes rendu sur la page .( imaginon que la page s'apelle supprimer.php )
vous allez rajouter apres le nom de la page ( supprimer.php) vous aller rajouter un point d'interrogation ( ?)
puis le mot fichier ensuite rajouter le signe egale ( = ) puis enfin rajouter le nom du fichier que vous souhaitez supprimer .

Voila maitenant vous n'avez plus besoins de modifier a chaque fois la page ( supprimer.php )
sweetdragon - 17 mars 2009 à 16:04
salut,

tu as la même avec tout le repertoires et son contenu ou une version pour les repertoires ?

moi j'ai des repertoires et aussi des fichier en .ulr que j'arrive pas a supprimer.

merci d'avance
PechMayneau- 24 déc. 2011 à 18:34
merci mais j'ai ce message d'erreur /

Warning: No files match supplied glob Jacques Brel- Amsterdam.mp3 in /mnt/110/sda/b/0/ucim/P/delete2.php on line 22
Ajouter un commentaire
Réponse
+0
moins plus
exemple :


http://ton-site.com/supprimez.php?=monfichier
Ajouter un commentaire
Réponse
+0
moins plus
Cher internaute .
Je me suis tromper de sujet et jai poster dans le mien ( o;O )
donc le lien de plus haut c'etait un exemple pour un autre sujet .
je voulais aussi vous prevenir quand cherchant un peu jai trouver le solution a mon probleme

Cordialement
att17
Ajouter un commentaire
Réponse
+0
moins plus
Salut !

Je cherche également à supprimer des fichiers de mon FTP. J'utilise Filezilla et j'ai ajouté un mp3, pour mon plus grand malheur !
J'ai bien lu le topic, et j'ai essayé toutes les méthodes proposées : unlink, rm etc ... toutes me donnent le même résultat :
Warning: No files match supplied glob Mon_Fichier in /mnt/105/free.fr/e/0/Mon_Site/Mon_Répertoire/supprimer.php on line 22

Donc je ne sais pas. Ai-je mal recopier ? (pourtant, Crtl+C / Crtl V, ca marche bien normalement)

J'ai le même problème pour un autre fichier dans mon répertoire : un site web entier, qu'il ne veut pas transférer sur mon PC, ou supprimer.

Merci de votre aide !
PechMayneau- 24 déc. 2011 à 18:37
Même problème que toi
Ajouter un commentaire
Réponse
+0
moins plus
Merci Ce post m'A beaucoup aidé. Pour supprimer certains fichier j'ai dû ajouter le répertoire/le nom du fichier et tout a fonctionné.
Ajouter un commentaire
Réponse
+0
moins plus
Marc,
Total Commander se montre une fois de plus vraiment excellent.
Merci, ça fonctionne !
Ajouter un commentaire
Ce document intitulé « Impossible de supprimer un fichier sur FTP » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?
Impossible de supprimer un fichier sur FTP - page 2