Commande "cp" sélective.

Résolu/Fermé
Klas - 1 déc. 2009 à 10:16
 Klas - 3 déc. 2009 à 19:36
Bonjour,
Dans le cadre d'un exercice d'initiation à Linux, je dispose dans un répertoire d'un ensemble de fichiers et de sous répertoires, je voudrais copier les fichiers , et seulement les fichiers, dans un autre emplacement. Je ne vois que la commande cp pour faire ce travail, cependant, son manuel n'indique pas une option concernant le choix du type de l'argument (fichier ou répertoire) . Quel commande devrais-je donc utiliser sachant que le nombre de fichiers à déplacer est très grand.

je vous remercie d'avance.

Cordialement , Klas.
A voir également:

4 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
1 déc. 2009 à 11:39
Re-

find /chemin -type f -exec cp {} /destination \;

;-))
2
merci beaucoup jipicy, ;)))

j'ai une autre petite question si vous permettez ,
plus généralement , si on veut inverser la sélection, genre "copier uniquement les fichiers qui ne commence pas par la lettre "c" ou qui n'ont pas l'extension, etc...) que doit-t-on modifier dans la ligne de commande suivante (je la prends juste pour exemple) ?



$ find . -name "c*" -exec cp {} /destination \;


merci.

Cordialement Klas.
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897 > Klas
2 déc. 2009 à 08:46
Il suffit d'utiliser la négation ( ! ) devant le paramètre "-name" :

find . ! -name "c*" -exec cp {} /destination \; 
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
1 déc. 2009 à 11:01
Salut,

Avec l'affichage des options longues "ls -l", tu peux voir le type de fichier... (man ls)

Sinon, avec la commande "find" c'est encre plus simple... (man find)
0
Salut jipicy,

merci de me répondre, on utilise les commandes ls et find pour l'affichage (- pour fichier et d pour répertoire) et la recherche, et moi je voudrais aussi copier. que faire alors ??

Klas.
0
merci infiniment jipicy !

;)
0