シェルスクリプトで複数行のコメントアウト
シェルスクリプトで複数行のコメントアウト
困ったこと
一行のコメントは#
でできるが、複数行のコメントはシェルスクリプトでは対応していないが、実現させたい。すなわちJavaにおける/* ソース */
を実現したい。
環境
- Bourne shell
- OS X 10.9.3
解決
:<<'#__COMMENT_OUT__’ ソース #__COMMENT_OUT__
を利用する
コメントアウトなし
#!/bin/sh n=$1 f=0 i=1 while [ $i -le $n ]; do f=$((f + i)) i=$((i + 1)) done echo $f
実行結果
55
コメントアウトあり
#!/bin/sh n=$1 f=0 :<<'#__COMMENT_OUT__' i=1 while [ $i -le $n ]; do f=$((f + i)) i=$((i + 1)) done #__COMMENT_OUT__ echo $f
実行結果
0
コメントアウトの無効化
#!/bin/sh n=$1 f=0 #:<<'#__COMMENT_OUT__' i=1 while [ $i -le $n ]; do f=$((f + i)) i=$((i + 1)) done #__COMMENT_OUT__ echo $f
実行結果
55
参考
詳しい原理は以下を参照しくてください。 * シェルスクリプトにおける複数行コメントアウト
以上