これが私の最初の機能です。
#!/bin/bash
lets_print () {
echo hello $1
}
lets_print Earth
lets_print Mars
結果表示準備完了
user@bash$ ./demo.sh
Hello Earth
Hello Mars
これが私の2番目の機能です。
#!/bin/bash
lets_print () {
echo hello $1 $2
}
lets_print Earth
lets_print Mars
2番目の結果表示を準備します。
user@bash$ ./demo.sh
Hello Earth
Hello Mars
誰かがなぜ同じ結果が出るのかを説明できますか?
今私は$1=Earth
そしてについて考えています$2=Mars
。しかし、私はこれが間違っていることを知っています。
答え1
関数呼び出しごとに1つの位置引数のみが渡されるため、同じ結果が表示されます。 marsを2番目の引数にするには、次のように呼び出す必要があります。
lets_print Earth Mars
位置パラメータの推奨資料:3.4.1 位置パラメータ