Это также работает, если файл не имеет расширения и у одного из родительских каталогов есть точка в имени.
Ответ 4
Вероятно, этого не будет много, но я не мог сопротивляться.
Этот код будет иметь дело с граничным случаем, когда файл может не иметь расширения уже (в этом случае он будет его добавлять). Он использует "тильд-трюк"