Bashを使用してパッケージ名のバージョン部分のみを抽出する

Bashを使用してパッケージ名のバージョン部分のみを抽出する

パッケージ名からパッケージバージョンのみを抽出したいです。varパッケージ名(例::)を含む変数があるとしますvar="nfs-utils-1.2.6-6.fc17.i686.rpm"。抽出された文字列はです1.2.6-6。解析に使用される方法は、すべての方法(regex、awk、cut)です。

編集:上記の例から実際に抽出したい1.2.6

ベストアンサー1

これは移植性が悪いですが、この場合は次のようにgrep動作します。

echo $var | egrep -o '[0-9].*-[0-9]'
1.2.6-6

おすすめ記事