我有兴趣知道是否有一个命令行可以让我递归地将文件夹复制到我们所有的 NGINX 虚拟主机 htdocs 文件夹:
我需要将该文件夹复制到 vhosts 中的所有主机:
/var/www/vhosts/*/htdocs/
答案1
这个脚本可能会有所帮助:
for dir in /var/www/vhosts
do
if [ -d dir]
then
cp -r DIR_TO_COPY $dir/htdocs
fi
done
答案2
恕我直言,我认为上面的代码/答案不正确。
if [ -d dir]
可能是尝试 if [[ -d "$dir" ]]
..或 [[ -d "$dir" ]];..
以下代码应该可以工作并执行您想要的操作。
vhostdirs=( ./var/www/vhosts/* )
for dir in "$vhostdirs"
do
cp -r "folder_to_be_copied" "$dir/htdocs/"
done
还要注意变量周围的引号" "
,这对于保留目录名称中的空格至关重要。