Comment puis-je supprimer des fichiers dans le terminal couramment?

33

Par exemple, je fais

cd Music
dir

et obtenir

123456789.mp3
qweerkrtrkgljdjfkdjfdkf.mp3
a.mp3
b.mp3
blabla.mp3

Comment supprimer, par exemple, les fichiers qweerkrtrkgljdjfkdjfdkf.mp3 et blabla.mp3 avec le moins d'effort?

UPD : L'idée clé est que les noms de fichiers peuvent être longs, je ne souhaite donc pas les taper.

Chelios
la source

Réponses:

57

Essaye ça:

rm -f 2.mp3 blabla.mp3

rmsupprime les fichiers et le -fforce (pour qu'il ne s'arrête pas, vous demandant si vous voulez supprimer le fichier). Si cela ne se trouve pas dans votre répertoire personnel, ajoutez le préfixe sudo. Voici un autre moyen qui pourrait nécessiter moins de dactylographie (un peu plus difficile à lire cependant)

rm -f {2,blabla}.mp3

Cela s'étend à 2.mp3 blabla.mp3. Si vous souhaitez utiliser des noms de fichiers plus grands, vous pouvez utiliser le caractère générique ( *), qui renverra tous les éléments commençant / se terminant par le nom de fichier que vous avez choisi. Par exemple:

rm -f bla*

supprimera tous les fichiers commençant par bla. Si vous avez utilisé ceci:

rm -f *.mp3

Il supprimera tous les fichiers se terminant par .mp3. Si vous avez utilisé ceci:

rm -f bla*.mp3

Il supprimera tous les fichiers commençant par blaet se terminant par .mp3. Les possibilités sont presque infinies avec le *personnage: P

MiJyn
la source
1
Je savais que quelqu'un entrerait juste. Clavier HTC stupide!
2
Si les fichiers vous appartiennent dans votre propre dossier personnel, vous n'avez pas besoin d'utiliser sudo.
Bon point. J'ai mis à jour mon post.
MiJyn
3
Peut-être noter en plus la possibilité d'utiliser le caractère de tabulation pour compléter les noms de fichiers?
Darael
Et si je veux inclure des sous-répertoires? J'ai essayé d'ajouter -r mais cela n'a pas fonctionné. J'ai plusieurs de ces ennuyeux ._. fichiers d'index mac que je veux effacer d'un site Web.
Frantumn
4

Comme tout le monde le dit, rm -f <file>le chemin à parcourir, cependant, comme l'a dit Stonedsquirrel, vous pouvez taper les premières lettres et cliquer <TAB>dessus pour que le nom du fichier soit automatiquement rempli.

Pimenter
la source
0

Essaye ça: rm qweer*.mp3 bla*.mp3

Attention: Si un nom de fichier est démarré avec ces lettres, cette commande le supprimera.

Hckr
la source
0

Comme @Hckr l'a déjà mentionné, il n'y a aucune similitude entre le nom. Vous pouvez utiliser des caractères génériques, par exemple rm *.mp3, supprimer tous les fichiers dont le nom se termine par .mp3. Si de telles similitudes n'existent pas, vous devez spécifier chaque fichier individuellement.

Vous pouvez en fait économiser du texte en utilisant la complétion par des tabulations. Dans votre exemple, si vous tapez rm qet appuyez sur la touche de tabulation, elle sera complétée à rm qweerkrtrkgljdjfkdjfdkf.mp3. Cela fonctionne parce que c'est le seul fichier commençant par q. Si vous tapez rm bceci, cela ne suffira pas, car vous avez deux fichiers commençant par b.

André Stannek
la source
0

Facile, rm 2.mp3 blabla.mp3.

ATTENTION: cela entraînera une suppression permanente!


Pour les fichiers:

1234.MP3 1345.MP3 1234.MP4

rm -f 1*3*.MP3 supprimerait les 2 premiers, pas de confirmation, de façon permanente!

* est quelque chose même vide, c'est pourquoi il supprime toujours le second.


la source
1
Peut-être -f après rm
S'il y a un fichier qui commence par q, tapez q *, s'il y en a plus, il supprimera tous les q-begginers.
Vous savez que vous pouvez modifier votre propre réponse pour inclure ces informations supplémentaires.
1
Au lieu de commenter, vous devriez utiliser le editbouton pour ajouter ces ajouts intéressants à votre réponse.
Marco Ceppi
Terminé! La prochaine fois, j'utiliserai l'ordinateur portable.
0

Ce que je ferais, c’est de placer les fichiers que vous ne vouliez pas supprimer dans un dossier avant d’exécuter ces commandes s’il y en avait moins que vous ne vouliez vous en débarrasser. Mais en fin de compte, une combinaison de caractères génériques ("*" et "?") Et d’énoncés de définition permettrait de faire le travail facilement. Tout dépend des fichiers que vous souhaitez conserver ou supprimer.

Avez-vous déjà essayé de faire glisser les fichiers à supprimer dans la fenêtre de l'application Terminal? Il peut cloner le répertoire ainsi que le style de chemin du nom de fichier pour vous. Cependant, si vous ne supprimez que 2 ou 3 fichiers, j’espère que c’est simplement à des fins d’apprentissage, sinon, je taperais manuellement les chemins et les noms de fichiers à l’aide de la touche de tabulation de mon clavier. répertoire courant qui commence par ce que vous avez déjà tapé.

R4GN4R
la source
0

La complétion par tabulation est la voie . Il est activé bashpar défaut pour Ubuntu. Cela fonctionne comme ceci:

$ rm bl<tab>

sera automatiquement changé en

$ rm blabla.mp3

Si le nom de fichier est ambigu, vous devez appuyer tabune nouvelle fois sur pour afficher la liste des noms de fichiers possibles:

$ rm b<tab><tab>
blabla.mp3  b.mp3

Cela fonctionne également pour un certain nombre d'autres commandes, telles que apt-get, serviceetc.

Si vous êtes intéressé par une touche de tabulation encore plus sophistiqué, consultez zshla config grml , il est hallucinant.

kraxor
la source