쉘 스크립트에서 코드 블록을 주석 처리하는 간단한 방법이 있습니까?
답변
bash에서 :
#!/bin/bash
echo before comment
: <<'END'
bla bla
blurfl
END
echo after comment
'과 '주위에 END구분 기호, 예를 들면, 같은 블록 안에 다른 것들을 중요 $(command)구문 분석 및 실행됩니다.
답변
쉘 스크립트에는 블록 주석이 없습니다.
vi(yes, vi)를 사용하면 n 행 에서 m 행까지 쉽게 주석을 달 수 있습니다
<ESC>
:10,100s/^/#/
(10 기호에서 100 기호로 대체 줄 시작 (^)을 # 기호로 읽습니다.)
댓글을 달지 않은 상태
<ESC>
:10,100s/^#//
(10 줄에서 100 줄의 대체 줄 시작 (^) 다음에 #가 붙은 #을 읽습니다.)
vi어디에나 거의 보편적입니다 /bin/sh.
답변
당신이 사용할 수있는:
if [ 1 -eq 0 ]; then
echo "The code that you want commented out goes here."
echo "This echo statement will not be called."
fi
답변
다음은 작동한다 sh, bash, ksh와 zsh.
주석 처리 할 코드 블록은 다음 BEGINCOMMENT과 ENDCOMMENT같이 넣을 수 있습니다 .
[ -z $BASH ] || shopt -s expand_aliases
alias BEGINCOMMENT="if [ ]; then"
alias ENDCOMMENT="fi"
BEGINCOMMENT
echo "This line appears in a commented block"
echo "And this one too!"
ENDCOMMENT
echo "This is outside the commented block"
위의 코드를 실행하면 다음과 같은 결과가 발생합니다.
This is outside the commented block
주석 처리 된 코드 블록 을 주석 해제 하려면
alias BEGINCOMMENT="if : ; then"
대신에
alias BEGINCOMMENT="if [ ]; then"
위의 예에서.
답변
작은 따옴표를 피할 수 있다면 :
__='
blah blah comment.
'
답변
: '열고 '닫을 때 사용 합니다 .
예를 들면 다음과 같습니다.
: '
This is a
very neat comment
in bash
'
이것은 Vegas에서 찾은 예입니다 .
답변
Vim에서 :
- 댓글을 남기고 싶은 첫 번째 줄로 이동
shift-V(시각 모드 입력), 블록의 하이라이트 라인- 선택시 다음을 실행하십시오.
:s/^/#/ -
명령은 다음과 같습니다.
:'<,'>s/^/# -
엔터를 치다
예 :
shift-V
jjj
:s/^/#
<enter>
