0

次の内容のファイルがあります

abc_cde_app_13.5.0.10
abc_cde_app_13.5.0.10.xml
abc_cde_app_13.5.0.10_log.url
abc_cde_app_13.5.0.10_note.xml

数値は変更される可能性があり、標準ではありません。そして、私は最初のものだけを選びたいです。3 つすべてを変数 $file に渡します。しかし、3 つのファイルすべてで見つかったバージョンが表示されます。1stだけどうやって手に入れるの?

if echo "$file" | grep -E "abc_cde_APP"; then
     echo "Version found: $file"
else
 echo "File not found"
4

1 に答える 1

1

これはどう:

grep 'abc_cde_app_[^_]*$'

それはあなたの例で機能します:

kent$  echo "abc_cde_app_13.5.0.10
abc_cde_app_13.5.0.10_log.url
abc_cde_app_13.5.0.10_note.xml"|grep 'abc_cde_app_[^_]*$'   
abc_cde_app_13.5.0.10
于 2013-05-10T15:44:40.477 に答える