GNU/Linux >> Tutoriels Linux >  >> Linux

Linux – Répertoires corrompus, problème pour les supprimer ?

Il y a un répertoire dans mon système Linux en raison d'un dysfonctionnement logiciel, certains répertoires avec un nom indésirable, comme vous pouvez le voir ci-dessous, sont créés, j'ai du mal à les supprimer,

$ ll
total 1532
drwxr-xr-x   2 sensage sensage   4096 Apr 19 16:56 -?$??
drwxrwxr-x 248 sensage sensage   4096 Apr 23 11:37 .
drwxrwxr-x  99 sensage sensage   4096 Apr 16 14:23 ..
drwxr-xr-x   2 sensage sensage   4096 Apr  6 14:54 }???;?
drwxr-xr-x   2 sensage sensage   4096 Apr 19 03:01 }??=?|
-rw-r--r--   1 sensage sensage     88 Apr 22 13:37 $
drwxr-xr-x   2 sensage sensage   4096 Apr  2 12:43 ?
drwxr-xr-x   2 sensage sensage   4096 Mar 20 02:51 ?=??&?
drwxr-xr-x   2 sensage sensage   4096 Apr 11 08:40 ?;%??;
drwxr-xr-x   2 sensage sensage   4096 Apr 14 09:38 ?:????
drwxr-xr-x   2 sensage sensage   4096 Mar 22 17:21 ?(?>~?
drwxr-xr-x   2 sensage sensage   4096 Apr  1 13:45 ?[???%
drwxr-xr-x   2 sensage sensage   4096 Apr  3 14:03 [email protected]????
drwxr-xr-x   2 sensage sensage   4096 Apr 12 16:18 ??
drwxr-xr-x   2 sensage sensage   4096 Apr 17 16:38 ??&???
drwxr-xr-x   2 sensage sensage   4096 Mar 25 02:43 ??+???
drwxr-xr-x   2 sensage sensage   4096 Apr 19 00:46 Ü¡?,??
drwxr-xr-x   2 sensage sensage   4096 Mar 28 18:54 ÚŸ??"?
drwxr-xr-x   2 sensage sensage   4096 Mar 27 01:04 ???(?
drwxr-xr-x   2 sensage sensage   4096 Apr 19 22:41 ??ͨ?`
drwxr-xr-x   2 sensage sensage   4096 Apr 15 11:44 ?????-

comme vous pouvez voir les noms de répertoire en bleu. quand je veux les supprimer, j'obtiens l'erreur ci-dessous :

$ ls -1  | grep -v 20 | xargs rm -rf 
xargs: unmatched double quote; by default quotes are special to xargs unless you use the -0 option
rm: invalid option -- ¼
Try `rm ./'-¼$Þ¸Í'' to remove the file `-274$336270315'.
Try `rm --help' for more information.

que dois-je en faire ?

Réponse acceptée :

ls imprimera les caractères non-ASCII (ou plutôt, les caractères non pris en charge dans les paramètres régionaux actuels) sous la forme ? . C'est l'une des raisons pour lesquelles l'analyse de la sortie de ls est une mauvaise chose à faire. La sortie de ls est destiné à être regardé . Dans certains cas, comme celui-ci, ce ne sont pas les noms réels qui existent dans le système de fichiers.

Essayez plutôt quelque chose comme (cela supprimera tous fichiers et répertoires, y compris /path/to/dir )

rm -rf /path/to/dir

ou

find /path/to/dir -delete

ou

find /path/to/dir -exec rm -rf {} +

ou

find /path/to/dir -print0 | xargs -0 rm -rf

Modifier pour répondre à vos besoins. Pour supprimer uniquement les fichiers, ajoutez -type f après le chemin dans le find exemples, par exemple.

Faire juste rm -rf * dans ce répertoire (c'est important , le répertoire de travail courant doit être le répertoire dont vous souhaitez supprimer les fichiers et les répertoires) peut également suffire.

En relation :Dans Microsoft Access, comment supprimez-vous toutes les valeurs d'une seule colonne sans supprimer l'intégralité du champ ?
Linux
  1. 8 conseils pour aider les non-techniciens à passer à Linux

  2. Créer, supprimer et gérer des répertoires sous Linux

  3. Copier des fichiers et des répertoires sous Linux

  4. 5 commandes Linux que je vais commencer à utiliser

  5. Monter plusieurs répertoires sous linux

Comment renommer des répertoires sous Linux

Comment comparer des répertoires avec Meld sous Linux

Comment naviguer plus rapidement dans les répertoires sous Linux

Trouvez facilement des fichiers et des répertoires sur Linux

Commande mkdir :créer de nouveaux répertoires sous Linux

Comment lister uniquement les répertoires sous Linux