如何从bash中的字符串中删除后缀?

Lex*_*Pro 5 bash shell substring

我想在shell脚本中这样做:删除文件后缀并将其保存到另一个变量中:

file=abcabc.cpp
postf=.cpp
name=${file##postf}
echo $name
Run Code Online (Sandbox Code Playgroud)

但这行不通。手术后我要name = abcabc。你能帮助我吗?

anu*_*ava 5

您可以使用:

name="${file%$postf}"
echo "$name"
abcabc
Run Code Online (Sandbox Code Playgroud)