一般に、シェルスクリプト、特にBashの「パラメータ拡張」(「変数拡張」とも呼ばれます)とは何ですか?

一般に、シェルスクリプト、特にBashの「パラメータ拡張」(「変数拡張」とも呼ばれます)とは何ですか?

私は、「パラメータ拡張」(「変数拡張」とも呼ばれる)という用語が以下を意味することを理解しています。傘の用語一般的には、特に次のように、Bash には関係しないいくつかのシェルスクリプト操作があります。

  1. 変数の置換。
  2. 同じ行に複数の値がある場合、行は分割されます。
  3. 特定の範囲内のワイルドカード変数。

おそらくもっとあるかもしれません。

用語の後ろに隠された哲学を正しく理解したら、変数を単純な変数からより影響力のあるデータフロー(値の置換など)に「拡張」します。これで、変数が何かを実行した変数に拡張されました。

私の質問:

一般に、用語を十分に正確に理解していますか?回答に言及する必要があるこの包括的な用語に基づく他のタスクはありますか?

ベストアンサー1

変数拡張とも呼ばれるパラメータ拡張は、修飾子を適用して型をパラメータ値に置き換える構文構造です。$parameter${parameter}

シェルがコマンドラインを読み取るとき、行を単語に分割し、さまざまな拡張を実行する(パラメータ拡張はそのうちの1つです)、リダイレクトを適用するなど、明確に定義されたいくつかの手順でコマンドラインを処理します。たとえば、Bashシェルは最初に行を単語に分割します。次に、左から右に中括弧拡張、チルダ拡張、パラメータと変数拡張、算術拡張、コマンド置換、およびプロセス拡張を実行し、最後の単語分割とパス名拡張を実行します。

「可変印刷」とはどういう意味なのか理解できません。

Globbing または Bash ドキュメントで「パス名拡張」と呼ぶことが発生します。後ろに変数拡張;シェルは文字があるかどうかをコマンドラインの各単語をチェックし、それらのいずれかが見つかる*と、その単語をパターンと見なし、特定の構成に従って一致するファイルのリストに置き換えます。オプション。?[

詳細については、シェルのマニュアルページを参照してください。たとえば、Bashについては読むことができます。マニュアルページ、これ参考書、これ高度なスクリプトガイドそして他の多くの資料。

おすすめ記事