Como copiar um arquivo em várias subpastas de uma só vez em um servidor Linux?

3

Eu tenho uma pasta em um servidor Linux com mais de 35 subdiretórios, nos moldes de:

aa.foo.bar.baz
ab.foo.bar.baz
..
bp.foo.bar.baz

Eu tenho um arquivo que desejo copiar em cada um desses subdiretórios. O que é uma maneira rápida de fazer isso sem executar 35 ou mais comandos separados cp manualmente?

    
por Matt V. 28.09.2011 / 19:08

3 respostas

4
for i in *.foo.bar.baz/; do
    cp file "$i"
done
    
por 28.09.2011 / 19:19
2

encontre. tipo d | xargs -I {} cp ./myfile {} /

É assim que eu fiz o trabalho.

Aqui estava o problema que eu queria resolver. Eu queria testar todos os meus novos hosts virtuais antes de instalar os aplicativos reais.

pwd 
/var/www/
find . -type d
.
./site1
./site2
./site3
find . -type d | xargs -I{} cp ./php.info {}/ 
ls ./*
./php.info

./site1:
php.info

./site2:
php.info

./site3:
php.info

    
por 12.01.2012 / 10:10
0
for dirname in $(ls -d *.foo.bar.baz/); do cp file $dirname; done
    
por 28.09.2011 / 19:18

Tags