Bu soru, önceki sorum için bir dizi devamı, kullanarak sayısız dizin oluşturmamkdir
.
bash
Kabuğu kullanıyorum . Ben komut kullanarak her biri "s" önekiyle başlayan elli dizin oluşturduk:
mkdir $(printf "s%02i " $(seq 1 50))
sıfırlarla ikinci basamağa kadar doluyor. Olduğunu, ben elde dizinleri formu vardır s01
, s02
, ..., s49
, s50
.
Şimdi elli dizinin her birine cp
tek bir dosyayı (örneğin test.txt
) kopyalamak için kullanmak istiyorum . Bunu yukarıdakine benzer bir şekilde yapmak mümkün müdür? Örneğin, aşağıdakiler işe yarar mı? Unix / Linux için nispeten yeniyim, bu yüzden birisi bana güvenli olduğunu gösteren bir işaret verene kadar bunu denemek istemiyorum.
cp test.txt $ (printf "s% 02i.txt" $ (sıra 1 50))
Baktığımızda man
sayfa cp
, bu gibi görünmüyor cp
ancak böyle desteklerle birden çok hedef:
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
, aksi takdirde çekirdek başına bir iş olacak ve çok çekirdekli bir makinede işler IO için rekabet edecek.