先日の最後の要素を引っ張り出す事例をGrepの魔法を使って書き直すと
$ echo http://s3.amazonaws.com/downloads.basho.com/stanchion/1.5/1.5.0/osx/10.8/stanchion-1.5.0-OSX-x86_64.tar.gz | grep -o '[^\/]*$'
となります。
oオプションは
-o, --only-matching
マッチする行のマッチした部分だけを (それが空文字列でなければ) 表
示します。 マッチした各文字列は、それぞれ別の行に書き出します。
とある通り、一致した部分だけ出力します。
Grepは次の一致条件が来た場合、前に入っていたものを上書きするので
1. 「/」から始まる要素に一致
2. 次の要素が来た場合、前の要素を排除
3. 末尾まで到達した場合、最後に保持していた値を出力
といった塩梅で動作します。
ためしに先ほどの例をオプション抜きでやると
と全力で全文返してくれます。