폴더와 해당 내용을 모든 Nginx 가상 호스트 호스트에 복사합니다.

폴더와 해당 내용을 모든 Nginx 가상 호스트 호스트에 복사합니다.

모든 NGINX 가상 호스트 htdocs 폴더에 폴더를 재귀적으로 복사할 수 있는 명령줄이 있는지 알고 싶습니다.

이 폴더를 가상 호스트의 모든 호스트에 복사해야 합니다.

/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

IMHO, 위의 코드/대답이 정확하지 않다고 생각합니다.

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

또한 변수 주위에 따옴표를 적어 두십시오 " ". 이는 디렉토리 이름에 공백을 유지하는 데 필수적입니다.

관련 정보