Je traverse une période difficile en essayant de supprimer trois répertoires vides créés après un processus d'abandon de "nettoyage de l'espace disque libre" de bleachbit, j'ai utilisé toutes les méthodes suggérées et aucune ne semble fonctionner, j'ai essayé de les déchiqueter avec bleachbit et supprimer en utilisant des commandes comme rm -d
, rm -f
, rm -r
, j’ai essayé de les renommer, de les déplacer, j’ai même remplacé Ubuntu 16.04 par 17.04 au risque de corriger ce qui ne va pas. êtes toujours là.
Les répertoires sont dans une partition séparée et non dans le répertoire de base. Leurs noms sont les suivants:
-9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR
CD09GzmqmJfZ2rBA5rtBsWR1EAewq-fZWJCJhlO6r1aC
qoRSRba1C8bPYrpk_5OW6Qi9mPC.zhyzqUwivpQfArgb9
Chaque fois que j'essaie quelque chose, je reçois ce message qui dit:
Aucun fichier ou répertoire de ce nom
voici quelques-uns des résultats:
me@MyPC:~$ rm -f /media/me/702E29F142F/-9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR
me@MyPC:~$ rmdir -- $ 'CD09GzmqmJfZ2rBA5rtBsWR1EAewq-fZWJCJhlO6r1aC'
rmdir: failed to remove '$': No such file or directory
rmdir: failed to remove 'CD09GzmqmJfZ2rBA5rtBsWR1EAewq-fZWJCJhlO6r1aC': No such file or directory
me@MyPC:~$ rmdir -- 'CD09GzmqmJfZ2rBA5rtBsWR1EAewq-fZWJCJhlO6r1aC'
rmdir: failed to remove 'CD09GzmqmJfZ2rBA5rtBsWR1EAewq-fZWJCJhlO6r1aC': No such file or directory
me@MyPC:~$ rmdir 'CD09GzmqmJfZ2rBA5rtBsWR1EAewq-fZWJCJhlO6r1aC'
rmdir: failed to remove 'CD09GzmqmJfZ2rBA5rtBsWR1EAewq-fZWJCJhlO6r1aC': No such file or directory
me@MyPC:~$ rmdir -- -9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR
rmdir: failed to remove '-9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR': No such file or directory
me@MyPC:~$ Sudo rmdir -- -9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR
rmdir: failed to remove '-9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR': No such file or directory
me@MyPC:/media/me/702E29F142F2362F$ rmdir -- $'qoRSRba1C8bPYrpk_5OW6Qi9mPC.zhyzqUwivpQfArgb9'
rmdir: failed to remove 'qoRSRba1C8bPYrpk_5OW6Qi9mPC.zhyzqUwivpQfArgb9': No such file or directory
Lorsque j'essaie de le déplacer vers la corbeille ou de le supprimer à l'aide de Nautilus , il se présente comme suit:
-
_, passez donc _--
_ en premier ou utilisez un chemin absolu.Pour les répertoires vides, utilisez la commande rmdir
et écrivez _--
_ en tant que mot distinct avant le nom du premier répertoire à supprimer. Si _--
_ n'a pas été passé (ceci s'applique aux commandes que vous avez essayées ainsi que rmdir
), les mots commençant par _-
_ seront interprétés comme des ensembles d'options contrôlant le déroulement de la commande. se comporte plutôt que comme des noms de fichiers pour que la commande puisse être exécutée.
Vous devrez écrire vos commandes en fonction des noms de répertoires que vous avez. En raison de possibles erreurs de formatage des noms de fichiers dans l'éditeur visuel Stack Exchange, il est dans ce cas que je ne recommande pas de copier directement à partir de cette réponse. Cependant, à titre d’exemple que j’attends de vous modifier au besoin, si vous avez un répertoire dont le nom est:
_-9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR
_
Et il est vide, et vous êtes dans son répertoire parent (vous pouvez utiliser cd
pour y aller et pwd
pour vérifier dans quel répertoire vous vous trouvez actuellement), puis vous pouvez le supprimer comme ceci:
_rmdir -- -9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR
_
Ou, s'il appartient à root ou si vous n'avez pas l'autorisation de le supprimer:
_Sudo rmdir -- -9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR
_
Notez qu'il y a un espace après l'argument _--
_. C'est important.
Ou vous pouvez utiliser le chemin complet du répertoire. Dans ce cas, vous n'avez pas à vous soucier du répertoire dans lequel vous vous trouvez lorsque vous exécutez la commande et que _--
_ est facultatif. Par exemple (en fonction de ce que vous avez montré dans un commentaire):
_rmdir /media/me/702E29F142F/-9tDCcQrfg8u8e.AlOYZ7DX0q-ZRR77j9q8Gq0z1A62Sh25BS0pYZEby6JDVvtMZavFTCUgQUpjuJUCZ0pKspQLd40O3Zc9rzgGRFcxNBKOgr7KnVwZw_A4kkx4R9zq1oON8aP4y00EY0AuIJYRdCs9v9oYNKrFasQoMXwuLiw5lh0Z8J6Jh8u8pjDNnP31p0oBYsjTQTPUE1MXVqgAuWNjrhtEFuouXKR
_
(Ou avec _Sudo rmdir
_, comme ci-dessus.)
Si cela ne vous aide pas et que vous continuez à recevoir le même message Aucun fichier ou répertoire de ce type, le problème est que vous ne nommez pas les répertoires avec succès. Vraisemblablement, leurs noms contiennent des caractères inhabituels.
Il n’est pas évident que ce soit le cas sur la base de ce que vous avez montré, mais c’est un problème courant, aussi je l’inclus au cas où. Si vos noms de répertoire contiennent des espaces ou d’autres caractères traités spécialement par le shell, tels que des sauts de ligne, _*
_ ou _$
_, vous devez placer les noms entre guillemets simples. Cela sera suffisant tant que les noms eux-mêmes ne contiennent pas de guillemets simples.
Plus généralement, si vous avez utilisé cd
pour accéder au répertoire qui contient ces répertoires, vous devriez pouvoir obtenir une liste des entrées de ce répertoire (y compris les sous-répertoires que vous souhaitez supprimer) en exécutant:
_ls -1b
_
Cela diffère d'une commande ls
ordinaire de deux manières utiles:
-b
_ provoque l'impression des chemins avec des séquences d'échappement pouvant être collées entre _$'
_ _'
_. Aucun espace ne doit apparaître entre le caractère initial _$
_ et le caractère _'
_ initial.-1
_ permet à ls
de répertorier une entrée par ligne. Cela peut aider à réduire la confusion sur l'endroit où un nom de fichier se termine et l'autre commence.Cela devrait vous permettre d'écrire des commandes pour supprimer, renommer, etc. ces répertoires. S'ils sont vraiment vides, vous pouvez alors utiliser la commande rmdir
pour les supprimer. Vous devrez peut-être exécuter cette commande en tant que root, ce que vous pouvez faire avec Sudo
.
Voici une illustration délibérément simpliste des commandes que vous pouvez exécuter. Supposed _ls -1b
_ listé:
_abc\ def
ghi\njkl
pqr\b\b\bstuv
$$$$$$$\b\b\b$$$
_
Dans le premier cas, il y a un espace. Dans le second cas, il y a une nouvelle ligne (un saut de ligne). Dans le troisième cas, il y a trois caractères de retour arrière. Dans le quatrième cas, il y a à la fois _$
_ et des caractères de retour arrière.
Pour supprimer ces répertoires, vous pouvez utiliser:
_rmdir -- $'abc\ def'
rmdir -- $'ghi\njkl'
rmdir -- $'pqr\b\b\bstuv'
rmdir -- $'$$$$$$$\b\b\b$$$'
_
Comme ci-dessus, vous aurez peut-être besoin de Sudo
.
rmdir
peut prendre plusieurs noms de fichiers, mais si vous utilisez une commande par suppression, il peut être plus facile de comprendre les messages d'erreur que vous recevez, le cas échéant.
Dans ces exemples particuliers, les noms de répertoire ne commençaient pas par _-
_ et l'indicateur _--
_ n'était pas nécessaire. Mais cela n'a fait aucun mal.
$'
_ _'
_ versus brut _'
_ _'
_Contrairement aux citations avec _'
_ _'
_, les citations avec _$'
_ _'
_ entraînent des échappements de barres obliques inverses telles que _\n
_ et _\b
_.
_'ghi\njkl'
_ identifie un fichier dont le nom est littéralement:
ghi\njkl
_En revanche, _$'ghi\njkl'
_ identifie un fichier dont le nom est:
ghi jkl
_Certains navigateurs de fichiers graphiques (tels que Nautilus, "Fichiers") et certains terminaux (tels que GNOME Terminal) offrent une méthode encore plus simple pour obtenir un chemin absolu utilisable vers un fichier dans une commande de terminal que vous écrivez.
Cela fonctionnera sur la plupart des systèmes Ubuntu dotés d'une interface utilisateur graphique, mais cela ne fonctionnera pratiquement jamais si vous vous connectez à distance via SSH.
Vous pouvez faire glisser le dossier depuis la fenêtre du navigateur de fichiers dans la fenêtre du terminal pour y coller le chemin complet. Avec votre souris sur la fenêtre du terminal, relâchez le bouton.
Pour que cela soit utile, la meilleure approche consiste à écrire la commande que vous voulez exécuter en premier. Par exemple, écrivez ceci et insérez un espace à la fin mais n'appuyez pas sur Enter encore:
_rmdir --
_
Faites ensuite glisser le dossier de la fenêtre du navigateur de fichiers dans la fenêtre du terminal. Si votre navigateur de fichiers et votre émulateur de terminal le prennent en charge, vous devez voir un chemin collé, avec des guillemets _\
_ ou _'
_ fournis automatiquement. Vous pouvez ensuite appuyer sur Enter pour exécuter la commande. Même si la commande n'aboutit pas, cela donnera généralement un message d'erreur plus utile que Aucun fichier ou répertoire de ce type.
J'utiliserais nautilus
le gestionnaire de fichiers intégré à Ubuntu. Sélectionnez simplement les répertoires, cliquez avec le bouton droit de la souris et sélectionnez "Envoyer à la corbeille". Si les répertoires contiennent des fichiers volumineux, vous voudrez peut-être vider immédiatement la corbeille.
Si les répertoires appartiennent à la racine, Nautilus ne vous laissera pas les supprimer. Dans ce cas, ouvrez un terminal et utilisez:
gksu nautilus
Selon cette question de Linux Mint , certains fichiers Windows ne peuvent pas être déplacés vers la corbeille mais peuvent être supprimés directement.
Une autre réponse dans cette discussion explique comment trouver le type de système de fichiers en utilisant:
df -T /media/<path_to_project_folder>
Changer ensuite l'entrée /etc/fstab
fonctionnait pour un montage utilisant différents paramètres et pour supprimer les fichiers avec succès.
Selon ce Q & A Super User vous pouvez supprimer les fichiers avec des caractères spéciaux (noms étranges) en changeant le répertoire qui les contient et en utilisant:
rm -i -- *
Cela vous invitera à supprimer chaque fichier. Vous pouvez et devez remplacer "*" par une correspondance plus étroite s'il y a beaucoup de fichiers. Le --
arrête le traitement des options, ainsi un fichier nommé -d
sera supprimé par rm avec succès.
Une autre réponse dans le même fil propose de supprimer par numéro d'inode en utilisant. Il dit que vous pouvez utiliser ls -li
pour afficher tous les fichiers par leur inode. Ensuite, exécutez cette commande pour supprimer le fichier:
find . -inum ${INODE_NUM} -delete
Vous pouvez ajouter -maxdepth 1
à ma découverte pour plus de sécurité:
find . -maxdepth 1 -inum ${INODE_NUM} -delete