Questa domanda è una sorta di sequel della mia domanda precedente, Creazione di numerose directory usandomkdir
.
Sto usando la bash
shell. Ho creato cinquanta directory, ognuna che inizia con il prefisso "s", usando il comando:
mkdir $(printf "s%02i " $(seq 1 50))
che passa alla seconda cifra con zeri. Cioè, le directory che ottengo sono della forma s01
, s02
, ..., s49
, s50
.
Ora vorrei usare cp
per copiare un singolo file (ad esempio test.txt
) in ciascuna delle cinquanta directory. È possibile farlo in un modo analogo a quello sopra? Ad esempio, funzionerebbe il seguente? Sono relativamente nuovo su Unix / Linux, quindi non voglio davvero provare questo fino a quando qualcuno per favore non mi dà un'indicazione che è sicuro.
cp test.txt $ (printf "s% 02i.txt" $ (seq 1 50))
Guardando la man
pagina per cp
, non sembra cp
supportare più destinazioni come questa, tuttavia:
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
, altrimenti ci sarà un lavoro per core, e su una macchina multicore i lavori competeranno per IO.