コード:
#! /bin/bash
ALL="hello.log"
echo ${ALL%.*}
「こんにちは」が表示されることは知っていますが、「$ {ALL%。*}」を理解するにはどうすればよいですか?ありがとうございました。
コード:
#! /bin/bash
ALL="hello.log"
echo ${ALL%.*}
「こんにちは」が表示されることは知っていますが、「$ {ALL%。*}」を理解するにはどうすればよいですか?ありがとうございました。
{ }拡張に使用され、変数%.*に含まれるすべての文字をフルストップからエコーから削除するために使用されます。ALL
これを分解しましょう。
${ALL%.*}
${ }-パラメータ拡張を使用します。ALL-変数名。%-文字列の末尾から開始を削除します(RHS)(貪欲ではありません)。.*-パターンマッチング式; リテラルドットの後に任意の文字が続きます。これはパラメータ拡張です。マニュアルの対応するセクションに記載されており、と入力すると表示されますman bash。を検索し${parameter%word}ます。