文字列「r1/pkg / amd64 / misc / hash / hash-r1.r5218.tbz」がありますが、「hash-r1.r5218.tbz」のみが必要です。
だから、これを試してみます
unix$ a="r1/pkg/amd64/misc/hash/hash-r1.r5218.tbz"
unix$ echo $a | sed 's/.*\/\([^\/]*\)\.tbz/\1/' //[1]
hash-r1.r5218 //I know this should work
unix$ echo $a | sed 's/.*\/\([^\/]+\)\.tbz/\1/' //[2]
r1/pkg/amd64/misc/hash/hash-r1.r5218.tbz //however I do not know why it does not work.
私が覚えている限り、正規表現の+は、前の正規表現を1回以上使用することを意味します。* regexpで、前のregexpを0回以上使用することを意味します。
[2]が失敗する理由を誰かが説明できますか、どうもありがとう。