Comment faire une recherche inversée en ligne de commande ?

Comment faire une recherche inversée en ligne de commande ? - Divers - Linux et OS Alternatifs

Marsh Posté le 31-08-2008 à 19:32:24    

Je voudrais faire une recherche comme celle-ci :

find -name \*.doc -exec rm '{}' ';'


mais inversée, c'est à dire chercher dans un répertoire tous les fichiers qui ne sont pas des .doc (et les virer...).
 
Comment faire ?


---------------
un instant monsieur ça-va-chier
Reply

Marsh Posté le 31-08-2008 à 19:32:24   

Reply

Marsh Posté le 31-08-2008 à 20:03:13    

Bon, cela avance :)

find . \( -not -name *.doc \) -print


renvoie les fichiers qui ne sont pas .doc MAIS il renvoie aussi le nom des dossiers !
Comment éviter cela ?
 
J'ai aussi quelques soucis avec des fichiers qui comportent des caractères tels que dans n‚gociation :/


---------------
un instant monsieur ça-va-chier
Reply

Marsh Posté le 31-08-2008 à 20:23:13    

rm $(find . -type f |grep -v '.doc')


 
ca devrait fonctionner avec à peu près tous les fichiers (mêmes ceux avec un charset bizarre)


Message édité par Manisque le 31-08-2008 à 20:23:59

---------------
Si tu bois froid juste après le potage chaud, ça va faire sauter l'émail de tes dents - Monorailcat iz ohverin
Reply

Marsh Posté le 31-08-2008 à 21:17:30    

effectivement, ça passe mieux. Je continue...


---------------
un instant monsieur ça-va-chier
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed