Bash Shell 주석 여러 줄 의 몇 가지 방법

3654 단어 BashShell주석
1.가장 쉬 운 방법

:<<BLOCK
....
BLOCK
입력 을 앞의 명령 으로 다시 정의 합 니 다.그러나 빈 명령 이기 때문에 주석 에 해당 합 니 다.
주석 에 반 따옴표 명령 이 있 으 면 잘못 보고 하고 반 따옴표 부분 은 주석 이 되 지 않 습 니 다.예 를 들 어 var='ls-l'은 주석 이 되 지 않 습 니 다.
2.주석 에 반 따옴표 가 있 는 문 제 를 해결 합 니 다.
A.방법 1

:<<BLOCK'
....
'BLOCK
B.방법 2

:<<'BLOCK
....
BLOCK'
C、방 법 3

:<<'
....
'
BLOCK 는 Here Documents 의 정의 기호 로 이름 이 임 의 이 며 앞 뒤 만 일치 하면 됩 니 다.
3.:명령 과 Here Documents
:아무것도 하지 않 는 다(do nothing)즉 빈 명령 입 니 다.일반적으로 if...then...조건 에서 아무것도 하지 않 는 명령 으로 사 용 됩 니 다.예 를 들 어:

if [ -d $DIRECTORY ]; then
    :
else
    echo 'the directory do not exit !'
fi
다음 의 예:

cmd<<WORD
any input
file content
WORD
Here Documents 의 용법 입 니 다.위의 정의 문자 WORD 를 특정한 스 크 립 트 나 명령 에 전달 한 다 는 뜻 입 니 다.
WORD 의 내용 은 두 WORD 사이 에 임의의 내용 을 입력 하면 스 크 립 트 에서 cmd 로 입력 을 실행 할 수 있 으 며 파일 을 다시 만 들 필요 가 없습니다.
Here Documents 는 메뉴 화면 에 자주 사 용 됩 니 다.예 를 들 어:

cat <<Menu
1.List
2.Help
3.Exit
Menu
...에 이르다

:<<WORD
....
WORD
로 컬 파일 을 만 들 고 빈 명령 을 실행 하 는 것 과 같 습 니 다.아무것도 하지 않 는 것 도 주석 에 해당 합 니 다.
보충:
코드 는 다음 과 같 습 니 다:

for ((i=0; i<10; i++))
do
:<<_a_   
    if [  ]; then
        ...
    fi
_a_
    echo ""
done
위의: 
_a_ Here Documents 의 정의 기호 입 니 다.이름 은 임의로 앞 뒤 가 일치 하면 됩 니 다.
 
:빈 명령 은 아무것도 하지 않 는(do nothing)즉 빈 명령 에 해당 합 니 다.일반적으로 if...then...조건 에서 아무것도 하지 않 는 명령 으로 사 용 됩 니 다.예 를 들 어:

if [ -d $DIRECTORY ]; then
    :
else
    echo 'the directory do not exit !'
fi
 
주석 에 반 따옴표 명령 이 있 으 면 잘못 보고 하고 반 따옴표 부분 은 주석 이 되 지 않 습 니 다.예 를 들 어 var='ls-l'은 주석 이 되 지 않 습 니 다.
 
    주석 에 반 따옴표 가 있 는 문 제 를 해결 하 다.

:<<_a_'
....
'_a_
일방 통행 은 그만 두 겠 습 니 다.우물 번호\#는 해결 할 수 있 습 니 다.다음은 다행 입 니 다.
1.Here Documents 를 통 해 실현:
1)
:<주석 코드...
EOF
사칭:아무것도 하지 않 는 다 는 뜻 이다.
설명:이 방법 은 주석 코드 에 변수 인용 이나 반 따옴표 가 나타 날 때 bash 는 그들 을 분석 하려 고 시도 하고 잘못된 정 보 를 제시 합 니 다.해결 방법 은 다음 과 같은 몇 가지 가 있 습 니 다.
1.

:<<\EOF
...
EOF
2.

:<<'EOF'
...
EOF
3.

:<<'EOF
...
EOF'
4.

:<<EOF'
...
'EOF
5.

:<<'
...
'

좋은 웹페이지 즐겨찾기