私は、最初の引数がファイル名のために予約されていて、他のすべてのオプションの引数がスクリプトの他の部分に渡される単純なスクリプトを持っています。最初のもの以外のすべての引数を処理する(bashスクリプト内)
Googleアカウントを使用して、私はthis wikiを見つけたが、それは文字通りの例提供:
echo "${@:2}"
または
echo "${@:2,1}"
:
echo "${@: -1}"
を私は次のように、動作するように何かを得ることができません
端末から「不正な置換」を取得しました。
どのような問題がありますか?bashスクリプトに渡された最初の引数以外はどのように処理できますか?
混乱している人を呼び出すために間違ったシバンが提供され、 '' {@:2}」が動作しなくなりました。 – Guvante
あなたはちょうどUbuntuと他の多くのLinuxでダッシュされているデフォルトシェルを使用しました。 "$ {@:-1}"は次のように解釈されます。 {parameter:-word} - デフォルト値を使用し、パラメータが定義されていないかnullの場合はwordを使用します。 ダッシュ "$ {@:-1}"の結果は "$ @"とまったく同じです。 #!/ bin/bash – luart