iro*_*and 6 bash file-extension
我想通过basename
在 Bash 脚本中使用来删除文件的后缀。该命令仅以区分大小写的方式删除后缀。
如何不区分大小写地删除扩展名?
slh*_*hck 14
如果你想在 Bash 中删除一个扩展,你可以在没有外部工具的情况下做到这一点。然后,将其传递给basename
:
$ f=/path/to/some/file.foo.bar
$ basename "${f%.*}"
file.foo
Run Code Online (Sandbox Code Playgroud)
使用大小写混合扩展名:
$ f=/path/to/some/file.foo.Bar
$ basename "${f%.*}"
file.foo
Run Code Online (Sandbox Code Playgroud)
在这里,%
是字符串操作。它将从 in 的后面删除最短的匹配子字符串f
。在.*
不考虑他们的情况的点,并且零个或多个字符匹配。
使用参数扩展
file=/home/johndoe/cv.DOC
basename ${file%.[Dd][Oo][Cc]}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3998 次 |
最近记录: |