Этот вопрос является продолжением своего раннего вопроса « Создание многочисленных каталогов с помощью»mkdir
.
Я использую bash
оболочку. Я создал пятьдесят каталогов, каждый из которых начинается с префикса "s", используя команду:
mkdir $(printf "s%02i " $(seq 1 50))
который дополняет вторую цифру нулями. То есть каталоги , которые я получаю имеют вид s01
, s02
, ..., s49
, s50
.
Теперь я хотел бы использовать cp
для копирования одного файла (например, test.txt
) в каждую из пятидесяти каталогов. Можно ли сделать это способом, аналогичным описанному выше? Например, будет ли работать следующее? Я относительно новичок в Unix / Linux, поэтому я не хочу пробовать это, пока кто-нибудь, пожалуйста, не даст мне указание, что это безопасно.
cp test.txt $ (printf "s% 02i.txt" $ (seq 1 50))
Если посмотреть на man
страницу cp
, то не похоже, что она cp
поддерживает несколько направлений:
NAME
cp - copy files and directories
SYNOPSIS
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
DESCRIPTION
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.
Mandatory arguments to long options are mandatory for short options
too.
parallel -j1
, иначе будет одно задание на ядро, и на многоядерном компьютере задания будут конкурировать за IO.