tente isto:
echo "https://www.example.com/sub/folder/files/file.txt" | sed -e 's#http[s]://##' -e 's#/#-#g'
o resultado é: www.example.com-sub-pasta-arquivos-arquivo.txt
o motivo de apenas substituir o 'primeiro contato' é porque você estava perdendo o g como o último 'parâmetro' passado para o sed, ele significa global e substituirá todas as instâncias encontradas com o substituto desejado, sem ele, irá substituir apenas a primeira instância encontrada.
Também é importante notar que você pode separar os parâmetros do comando sed com qualquer símbolo, ele não precisa ser '/', eu prefiro usar um símbolo não envolvido na pesquisa e substituir em tudo, pois ele irá salvar Você está pensando demais em caracteres de captação de recursos e possíveis erros quando você está substituindo /.
Além disso, você pode juntar alguns comandos no sed usando a opção -e, como você pode ver acima, eu substituí 'https: //' por nada (removendo-o), então substituí todo '/' por ' - '. fácil fácil.
Espero que ajude você