Linux命令cp生成省略的目录

时间:2013-11-21 13:14:13

标签: linux centos5 cp

我想在100个不同的网站目录中放置一个名为“test1.html”的文件。

目录结构如下所示

/home/domain.com/public_html/(domain.com名称是每个目录的更改所以我使用*。

文件在这里:/root/test1.html

我通过root帐户尝试了cp test1.html /home/*/public_html/但是给了我

cp: omitting directory `/home/domain1.com/public_html/'
cp: omitting directory `/home/domain2.com/public_html/'

等等。

如何将一个文件放在所有域目录中?

它是Centos 5.9

2 个答案:

答案 0 :(得分:2)

尝试:

for dest in /home/*/public_html/
do 
   cp test1.html $dest
done

由于您在用户拥有的目录中编写,请小心umask设置 - 它控制文件的权限。您可以使用cp -p保留对test1.html的确切权限。

答案 1 :(得分:0)

试试这个:

cd /home/; find . -name public_html -type d | xargs -I {} cp /root/test1.html {};