TRIM a string in shell script

HI,
I have a string "NZ-deploy-mode-1.15-Linux.x86_64.rpm"

I want to get the string before -1 ie "NZ-deploy-mode"

Input is "NZ-deploy-mode-1.15-Linux.x86_64.rpm"

expected output is "NZ-deploy-mode"

How can I do that in shell script?

Thanks in advance.

$ xxx=NZ-deploy-mode-1.15-Linux.x86_64.rpm
$ echo ${xxx%%-1*}
NZ-deploy-mode
$

Jean-Pierre.

below one of ways to do it:

>
> a="NZ-deploy-mode-1.15-Linux.x86_64.rpm"
> echo $a | cut -f 1,2,3 -d -
NZ-deploy-mode
>
$ inp="NZ-deploy-mode-1.15-Linux.x86_64.rpm"
$ echo $inp | awk -F- '{print $1"-"$2"-"$3}'
NZ-deploy-mode
$ echo $inp | cut -d'-' -f1-3
NZ-deploy-mode
$

You can use sed as:

sed 's/-1.15-Linux.x86_64.rpm//'

Eg:

inp=NZ-deploy-mode-1.15-Linux.x86_64.rpm
abc@abc.com$ echo $inp | sed 's/-1.15-Linux.x86_64.rpm//'
NZ-deploy-mode

Thanks!!!

$ echo "NZ-deploy-mode-1.15-Linux.x86_64.rpm" | sed 's/-1.*//'
NZ-deploy-mode

@All thank you so much :slight_smile: