从linux中的字符串中提取子字符串

时间:2015-08-01 11:02:55

标签: linux awk sed

我需要从oracle-xe-11.2.0-1.0.x86_64.rpm中提取oracle-xe-11.2.0-1.0.x86_64.rpm.zip,我不知道如何开始。

必须满足的条件才需要删除.zip。如果没有.zip那么字符串就不会发生任何事情。怎么搭配呢?

3 个答案:

答案 0 :(得分:2)

改为使用basename

basename oracle-xe-11.2.0-1.0.x86_64.rpm.zip .zip

结果:

oracle-xe-11.2.0-1.0.x86_64.rpm

答案 1 :(得分:1)

string="oracle-xe-11.2.0-1.0.x86_64.rpm.zip"
echo "${string%.zip}"

输出:

oracle-xe-11.2.0-1.0.x86_64.rpm

答案 2 :(得分:0)

您可以使用sed。

sed 's/\.zip$//' file

sed 's/\.zip$//' <<< "$str"