我有一个结尾的文件名,.zip我只想要没有zip的文件名.在这里,我在bash中找到了一个技巧.
$f="05 - Means-End Analysis Videos.zip"
$echo "${f%*.zip}"
05 - Means-End Analysis Videos
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?怎么%*.zip删除我的扩展名?
pfn*_*sel 22
从头开始删除stringin 的最短匹配$var:
${var#string}
Run Code Online (Sandbox Code Playgroud)
从头开始删除stringin 的最长匹配$var:
${var##string}
Run Code Online (Sandbox Code Playgroud)
从最后删除stringin 的最短匹配$var:
${var%string}
Run Code Online (Sandbox Code Playgroud)
从最后删除stringin 的最长匹配$var:
${var%%string}
Run Code Online (Sandbox Code Playgroud)
尝试:
var=foobarbar
echo "${var%b*r}"
> foobar
echo "${var%%b*r}"
> foo
Run Code Online (Sandbox Code Playgroud)