I needed to get rid of all extensions, i.e: .tar.gz or .txt.out.  This is what worked for me in SQL Server:
CREATE FUNCTION RemoveFileExt
(
    @fullpath nvarchar(500)
)
RETURNS nvarchar(500)
AS
BEGIN
    IF(CHARINDEX('.', @fullpath) > 0)
    BEGIN
       SELECT @fullpath = SUBSTRING(@fullpath, 1, CHARINDEX('.', @fullpath)-1)
    END
    RETURN @fullpath
END;
CREATE FUNCTION RemoveFileExtAll
(
    @fullpath nvarchar(500)
)
RETURNS nvarchar(500)
AS
BEGIN
    IF(CHARINDEX('.', @fullpath) > 0)
    BEGIN
        SELECT @fullpath = dbo.RemoveFileExt(@fullpath)
    END
    RETURN @fullpath
END;
select dbo.RemoveFileExtAll('test.tar.gz');
OUTPUT> test
As a bonus, to get just the base name from the fully qualified path in Linux or Windows:
CREATE FUNCTION GetBaseName
(
    @fullpath nvarchar(500)
)
RETURNS nvarchar(500)
AS
BEGIN
    IF(CHARINDEX('/', @fullpath) > 0)
    BEGIN
       SELECT @fullpath = RIGHT(@fullpath, CHARINDEX('/', REVERSE(@fullpath)) -1)
    END
    IF(CHARINDEX('\', @fullpath) > 0)
    BEGIN
       SELECT @fullpath = RIGHT(@fullpath, CHARINDEX('\', REVERSE(@fullpath)) -1)
    END
    RETURN @fullpath
END;
select dbo.GetBaseName('/media/drive_D/test.tar.gz');
OUTPUT> test.tar.gz
select dbo.GetBaseName('D:/media/test.tar.gz');
OUTPUT> test.tar.gz
select dbo.GetBaseName('//network/media/test.tar.gz');
OUTPUT> test.tar.gz