49 votes

Comment copier plusieurs fichiers d'un répertoire différent en utilisant cp?

Je veux copier plusieurs fichiers d'un répertoire spécifique une fois que je suis dans un autre répertoire. Pour clarifier, je veux faire ce qui suit, à la fois (une commande):

 cp ../dir5/dir4/dir3/dir2/file1 .
cp ../dir5/dir4/dir3/dir2/file2 .
cp ../dir5/dir4/dir3/dir2/file3 .
cp ../dir5/dir4/dir3/dir2/file4 .
 

Je ne peux pas utiliser cp ../dir5/dir4/dir3/dir2/* . parce que dans dir2 il y a n fichiers (n>4)

En passant, j'utilise bash .

Merci.

78voto

Philipp Points 21479
 cp ../dir5/dir4/dir3/dir2/file[1234] .
 

ou (en bash)

 cp ../dir5/dir4/dir3/dir2/file{1..4} .
 

Si les noms de fichiers ne sont pas contigus, vous pouvez utiliser

 cp ../dir5/dir4/dir3/dir2/{march,april,may} .
 

5voto

ghoti Points 14996

Si tous les fichiers que vous souhaitez copier suivent le modèle file{number}{othertext} , vous pouvez utiliser quelque chose comme:

 cp ../dir5/dir4/dir3/dir2/file[0-9]* .
 

Notez que cela va copier file5 , mais cela va aussi copier file0abc .

Si vous souhaitez copier UNIQUEMENT ces quatre fichiers (et non les {othertext}), vous pouvez utiliser:

 cp ../dir5/dir4/dir3/dir2/file[1-4] .
 

Notez que bien que cela ressemble à une expression régulière, ce n'est pas le cas.

3voto

zbyszek26104 Points 323

Essaye celui-là:

  cp ../dir5/dir4/dir3/dir2/file{1..4}
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X