O comando s em sed é uma correspondência e substituição. No seu caso, .*>\(.*\)< é o padrão a ser correspondido e é o modelo para substituí-lo por.
Quando você tenta encontrar uma correspondência para .*>\(.*\)< no início de abc>asf<tfg , o resultado é abc>asf< . Esta parte da string é então substituída por asf . tfg não foi correspondido, então nada acontece com ele.
Usar .*>\(.*\)<.* como seu padrão de correspondência deve gerar os resultados desejados.