Подтвердить что ты не робот

Как скопировать несколько файлов из другого каталога с помощью cp?

Я хочу скопировать несколько файлов из определенного каталога, как только я попаду в другой каталог. Чтобы уточнить, я хочу сделать следующее, сразу (одна команда):

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

Я не могу использовать cp ../dir5/dir4/dir3/dir2/* ., потому что в dir2 есть n файлы (n>4)

Кстати, я использую bash.

Спасибо.

4b9b3361

Ответ 1

cp ../dir5/dir4/dir3/dir2/file[1234] .

или (в Bash)

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

Если имена файлов не являются непрерывными, вы можете использовать

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

Ответ 2

Если все файлы, которые вы хотите скопировать, находятся в шаблоне file{number}{othertext}, вы можете использовать что-то вроде:

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

Обратите внимание, что это скопирует file5, но также скопирует file0abc.

Если вы хотите копировать ТОЛЬКО эти четыре файла (а не {другие тексты}), вы можете использовать:

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

Обратите внимание, что, хотя это выглядит как часть регулярного выражения, это не так.

Ответ 3

Попробуйте следующее:

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