1. ホーム
  2. バッシュ

[解決済み】シェルで文字列を分割し、最後のフィールドを取得する方法

2022-03-25 21:37:15

質問

例えば、次のような文字列があるとします。 1:2:3:4:5 を取得し、その最後のフィールド ( 5 この場合) Bashを使ってそれを行うにはどうすればよいですか?私は試してみました cut で最後のフィールドを指定する方法がわかりません。 -f .

解決方法は?

を使用することができます。 文字列演算子 :

$ foo=1:2:3:4:5
$ echo ${foo##*:}
5

これは、先頭から':'までのすべてを貪欲に切り詰めます。

${foo  <-- from variable foo
  ##   <-- greedy front trim
  *    <-- matches anything
  :    <-- until the last ':'
 }