2013-08-07 5 views
-1

이 스크립트는 디렉토리가 다른 디렉토리의 부모인지 확인합니다. 이 스크립트는 어떻게 작동합니까?다음 스크립트에서 무엇이 ~ ~입니까

 T() { 
      if [[ "$2" =~ ${1}['/'?] ]] ; then 
       echo "$2 is child of $1" 
       return 0 
      else 
       echo "$2 is NOT child of $1 ($?)" 
       return 1 
      fi 
     } 
+3

가 ['bash' 매뉴얼 페이지]를 읽고 (http://linux.die.net/man/1/bash). –

+1

귀하의 질문에 애매한 표현이 있습니다. 이 스크립트가 어떻게 동작 하는지를 알고 싶습니까? 특히'~ ='가 무엇을하는지,이 스크립트를 어떻게 사용하는지 알고 싶습니까? 그것을 분명히하십시오. –

+0

여기에 무슨 일이 일어나고 있는지에 대한 혼란을 피하기 위해 [우리는이 질문을 가지고 자유롭게 실험을했습니다.] (http://meta.stackexchange.com/questions/192242/you-made-to-few-changes-to- - 개선 후 - 그것 -). – Bobby

답변

1

:

An additional binary operator, ‘=~’, is available, with the same precedence as ‘==’ and ‘!=’. When 
it is used, the string to the right of the operator is considered an extended regular expression 
and matched accordingly (as in regex3)). The return value is 0 if the string matches the pattern, 
and 1 otherwise. 
2

문자열은 패턴과 일치시키는 데 도움이되는 정규식 일치입니다. This link 도움을 받으실 수 있습니다.

2

정규식 패턴 일치 연산자입니다. bash 참조 설명서 (Conditional constructs)를 참조하고 [[ ... ]] 구조를 찾으십시오. 매뉴얼에서