${parameter/#pattern/string}のハッシュは何をしますか?

${parameter/#pattern/string}のハッシュは何をしますか?

次の代替項目が表示されます。この記事:

${PWD/#$HOME/~}

これはどのように比較されますか?

${PWD/$HOME/~}

どちらも同じようです。ハッシュがなぜ含まれるのかわかりません。

ベストアンサー1

man bash、説明する${parameter/pattern/string}

パターンが#で始まる場合は、パラメータ拡張値の先頭と一致する必要があります。パターンが%で始まる場合は、パラメータ拡張値の終わりと一致する必要があります。

> var=abcd
> echo "${var/bc/_}"
a_d
> echo "${var/#bc/_}"
abcd

おすすめ記事