CotEditor
CotEditor copied to clipboard
[highlight][Bash] パラメータ拡張 ${#param} の `#` が行コメントと解釈される
Bash のパラメーター拡張に ${#param} があり、"param 変数の文字数" が取得できます。
#!/bin/bash
param="test"
echo ${#param}
環境設定 > フォーマット で回避可能でしょうか? 可能でしたら設定方法を教示頂きたく、よろしくお願いします。
同様に $# があり、"シェルスクリプトのパラメータの数" が取得できます。
if [ $# -eq 0 ]; then
:
fi
また、${#param[@]} では、"param 配列の要素数" が取得できます。
array=("item1" "item2" "item3")
echo ${#array[@]}
こちらも行コメントと解釈されるので、回避したく。
これについては、すみません、現時点では「仕様です」という回答となり迂回方法もないです。 シンタックス定義については私が引き継ぐ前からの歴史的経緯が大きく現在の仕様となっているのですが、そろそろ限界かと思っているので今後(といっても今年中にできるかどうか怪しいレベル)大きく改変する予定です。そのときにこの辺りもカバーできればと考えています。
承知しました。
多種多様な言語があり、先人も含めて開発者の得意不得意な言語があれば、 特定の言語に対する不備も一時的には仕方ないと思っていますので。 気長にお待ちしております。