Pertanyaan ini adalah sekuel dari pertanyaan saya sebelumnya, Membuat banyak direktori menggunakanmkdir .
Saya menggunakan bashshell. Saya telah membuat lima puluh direktori, masing-masing dimulai dengan awalan "s", menggunakan perintah:
mkdir $(printf "s%02i " $(seq 1 50))
yang bantalan ke digit kedua dengan nol. Artinya, direktori yang saya mendapatkan adalah dalam bentuk s01, s02, ..., s49, s50.
Sekarang saya ingin menggunakan cpuntuk menyalin satu file (misalnya, test.txt) ke masing-masing dari lima puluh direktori. Apakah mungkin melakukan ini dengan cara yang analog dengan yang di atas? Misalnya, apakah pekerjaan berikut akan berhasil? Saya relatif baru di Unix / Linux, jadi saya tidak benar-benar ingin mencoba ini sampai seseorang tolong beri saya indikasi bahwa itu aman.
cp test.txt $ (printf "s% 02i.txt" $ (seq 1 50))
Melihat manhalaman untuk cp, sepertinya tidak cpmendukung banyak tujuan seperti ini, namun:
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, jika tidak akan ada satu pekerjaan per inti, dan pada mesin multicore pekerjaan akan bersaing untuk IO.