将 1 个文件复制到同一目录中的 100 个文件夹中



我需要复制 1 个文件 ( 索引.php (/home/name/domains/domainname.com/public_html/folder1/index.php

同一目录中的 100 个文件夹(所有文件夹都到此目录中(/首页/名称/域/域名.com/public_html/文件夹2/

在此示例中,目录文件夹 2 有 100 个文件夹

如何使用 1 个命令外壳执行此操作?

感谢您的帮助

尝试:

find /path/to/directory/* -type d  -exec cp /path/to/file.txt {} ;

例:

find /home/name/domains/domainname.com/public_html/folder2/* -type d  -exec cp /home/name/domains/domainname.com/public_html/folder1/index.php {} ;

使用 xargs

ls -d */ | xargs cp <path to single file>

在您的情况下,

cd /home/name/domains/domainname.com/public_html/folder2/
ls -d */ | xargs cp /home/name/domains/domainname.com/public_html/folder1/index.php
for f in heute/z/*/ ; do cp a.mp4 "$f"; done 

虽然您经常在命令中看到无用的尾部斜杠,但在这里,在 for 循环中,必须防止覆盖 heute/z/中的简单文件,并且仅将 dirs 作为参数。

控制:

find heute/z/ -name a.mp4 
heute/z/c/a.mp4
heute/z/b/a.mp4

这也适用于符号链接,如果您碰巧对使用此类链接的建议印象深刻。

最新更新