関数を作成しようとするのに良い例を見つけたと思いますが、後ろに隠れているロジックをすべて理解していません。
より具体的に言えば、「while」行で誰かがテストが何であるか、何をしているかを説明できますか? $#とは何ですか(#コメント文字ではありませんか?) -gt 0パラメータはどこから来ましたか? while のマニュアルページにありません。
例は次のとおりです。
function my_function()
{
while test $# -gt 0
do
$
echo "$1"
shift
done
}
ありがとうございます。
ベストアンサー1
#
それ自体は明らかにコメントですが、関数$#
に渡された引数の数を含みます。
test
ある数字が他の数字より大きいかどうかなど、さまざまなテストを実行できるプログラムです(演算子があれば-gt
他の演算子が多いので参照man test
)。テストが成功した場合(この場合はthe number of parameters
ISが0より大きい場合)、成功を返します。
このshift
コマンドは最初の引数を削除します。また減少$#
完全なコードは次のように考えることができます。引数を使用して操作を実行し(この場合は画面に表示)、引数が残りなくなるまで繰り返します。
デバッグに役立つ残りのパラメータをすべて表示するには、次の点を確認してください。$@