私のようないくつかの引数を指定して、次のスクリプトを実行するとarg1 arg2 arg3
:
#!/bin/bash
zenity --entry --text="$@"
zenityは、「arg1」というテキストで入力ダイアログを作成しますが、「arg1 arg2 arg3」が必要です。
次のスクリプトのような変数を使用すると、エントリテキストのすべての引数が表示されます。
#!/bin/bash
text="$@"
zenity --entry --text="$text"
これらのスクリプトの違いは何ですか?なぜ最初のもの$@
は最初の引数だけで置き換えられるのですか?
zenity --text="$*"
-"$*"
単一の単語に展開します。