删除除文件扩展名以外的所

时间:2015-05-11 15:42:07

标签: linux bash

我们说我有一个字符串:

x=file.tar.sh

我知道除了最后的n个字符之外如何删除所有内容。像这样(删除除了最后3个字符之外的所有内容:

${x: -3}

但这对于具有不同后缀长度的文件不起作用。 (len .tar!= len .sh)

我会通过删除所有内容直到最后一个点来解决这个问题。我试过这个:

${x##.}

这将删除最长的匹配,直到"。"但不知怎的,它只返回完整的字符串而不删除任何东西?

0 个答案:

没有答案