私のスクリプトには2つのパラメータが必要です。誰かが次を使用してスクリプトを呼び出すと、エラーメッセージを隠したいと思います。
script.sh --help
だから私はこれに疲れました。
if [ $# -ne 2 ] ; then
if [ "$1" -ne "--help" ]; then
echo "ERROR: wrong number of parameters"
echo
fi
echo "Syntax: $0 foo bar
exit 1
fi
しかし、エラーが発生しました。
script.sh: line 10: [: --help: integer expression expected
何が問題なの?
答え1
このパラメータは-ne
数値にのみ有効で、!=
文字列比較に使用する必要があります。
これは働きます:
if [ $# -ne 2 ] ; then
if [ "$1" != "--help" ]; then
echo "ERROR: wrong number of parameters"
echo
fi
echo "Syntax: $0 foo bar
exit 1
fi