셸 변수 역할 영역

1665 단어 #Shell
총결산
  • 함수 밖의 변 수 를 전역 변수 로 정의 하고 역할 영역 은 위 치 를 정의 하 는 것 이 셸 이 끝 날 때 까지 시작 합 니 다.
  • 함수 내 변 수 를 정의 합 니 다. 기본 값 은 모든 변수 입 니 다. 역할 도 메 인 은 정의 위치 에서 셸 이 끝 날 때 까지 시작 합 니 다. 즉, 함수 내 에서 변 수 를 수정 하면 함수 밖에서 접근 합 니 다.변수 앞 에 local 키 워드 를 추가 하면 변 수 는 국부 변수 이 고 역할 영역 은 함수 안에 있 습 니 다. 즉, 함수 내 에서 변수 에 대한 수정 은 함수 밖 에 접근 하지 않 습 니 다.
  • 함수 내 전역 변 수 를 정의 합 니 다. 함수 가 하위 셸 에서 호출 될 때 역할 영역 은 하위 셸 에 있 고 부모 셸 에 접근 하지 않 습 니 다.
  • 하위 셸 의 부모 셸 변 수 는 부모 셸 에 접근 하지 않 습 니 다.

  • 예시
    g="g"
    func1()
    {
    g="g1"
    }
    
    func2()
    {
    local g="g2"
    }
    
    echo "g:$g"  # output:g:g
    func1
    echo "g:$g"  # output:g:g1
    g="g"
    func2
    echo "g:$g"  # output:g:g
    g="g"
    a=`func2` # shell  ,
    echo "g:$g"  # output:g:g

    좋은 웹페이지 즐겨찾기