web-dev-qa-db-fra.com

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.

49
ziulfer
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} .
78
Philipp

Si tous les fichiers que vous souhaitez copier sont dans le modèle de file{number}{othertext}, vous pourriez utiliser quelque chose comme:

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

Notez que cela va copier file5, mais il copiera également 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 ressemble à une partie d'une expression régulière, ce n'est pas le cas.

5
ghoti

Essaye celui-là:

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