我需要复制 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
这也适用于符号链接,如果您碰巧对使用此类链接的建议印象深刻。