回答:
これは、パラメーターの長さ、配列内の要素の数、または位置パラメーターの数を返すパラメーター展開です。
シェルのマニュアルを読んでください。以下はbashマニュアルからのものです:
${#parameter}値の文字長
parameterが代入されます。場合parameterである*又は@、置換値は、位置パラメータの数です。parameterが*または@で添字された配列名の場合 、置換される値は配列内の要素の数です。parameterが負の数を添え字とするインデックス付き配列名の場合 、その数はパラメーターの最大インデックスよりも1大きいと解釈されるため、負のインデックスは配列の最後から数え、-1のインデックスは最後の要素を参照します。 。
また、インタラクティブなrootシェルで作業する習慣をつけないでください。せいぜい危険で無謀です。管理者sudo特権を必要とする状況でのみ、慎重に使用してください。遊んでbashみることは、通常の非rootユーザーとして間違いなくできることです。
ここ数年、私は自分用に1人のユーザーを手動で追加するために対話型のルートシェルを使用しました。それは2分の仕事であり、それから私は#その機械で二度とプロンプトを見る必要はありません。