$1最初の引数です。
$@それらのすべてです。
シェルスクリプトに渡された最後の引数を見つけるにはどうすればよいですか?
${!#}です。を使用してテストしbash -c 'echo ${!#}' arg1 arg2 arg3ます。以下のためのbash、kshのとzshの、デニス・ウィリアムソンの答えが提案しています${@: -1}。また${*: -1}、使用することもできます。を使用してテストしzsh -c 'echo ${*: -1}' arg1 arg2 arg3ます。しかし、それはダッシュ、csh、tcshでは機能しません。
${!#}とは異なり${@: -1}、パラメータ展開でも機能します。でテストできbash -c 'echo ${!#%.*}' arg1.out arg2.out arg3.outます。