>

테스트 환경에서 다음을 실행했습니다 :

rm -rf /var/www/html/${domain} /etc/nginx/sites-available/${domain} /etc/nginx/sites-enabled/${domain}

결과는 그 html sites-available  그리고 sites-enabled  모든 내용과 함께 디렉토리가 삭제되었습니다.

구절에 어떤 문제가 있습니까? 내가 전체 경로를 제시하면, 그 원인을 놓칠 수 있습니다 . -r 의 재귀와는 아무런 관련이 없다고 가정합니다. .

  • 답변 # 1

    도메인 값이 비어 있거나 정의되지 않은 경우 방금 실행했습니다 (예 : rm -rf /var/www/html ). .

    domain 를 명시 적으로 확인할 수 있습니다  정의되어 있습니다 :

    if [ -z "$domain" ]; then
        echo "ERROR: domain is undefined" >&2
        exit 1
    fi
    
    

    또한 set -u 사용  스크립트에서 이런 종류의 문제를 방지 할 수 있습니다. 이로 인해 정의되지 않은 변수를 사용하면 오류가 발생합니다.

    $ set -u
    $ echo $undefined_variable
    bash: undefined_variable: unbound variable
    
    

관련 자료

  • 이전 email - "메일"프로그램이 없습니다 설치해야합니까?
  • 다음 linux - Ctrl-Alt-F1 이후 GUI로 돌아가는 명령 줄?