Não há realmente nenhuma grande diferença entre o uso de uma barra final ou não em geral para um diretório, exceto no tratamento de links simbólicos. Veja Especificações básicas do grupo aberto, 4.11 Resolução do nome do caminho (veja também esta resposta no Unix SE).
Como o GNU tar está relacionado: uma barra final simplesmente não é manipulada em --exclude
padrões, como você notou. A diferença é simplesmente causada pelo seu código fonte específico, se alguém apontar para algo :-). Veja esta questão no Server Fault SE (embora não forneça muitos detalhes - apenas declara a facto). Consulte este tópico de e-mail para obter algumas informações relacionadas. Uma pista pode ser encontrada nesta passagem (embora eu não tenha certeza do que fazer com isso):
Otto Moerbeek wrote:
This is the piece of code that is relevant:
/* * Some programs that create ustar archives append a '/' * to the pathname for directories. This clearly violates * ustar specs, but we will silently strip it off anyway. */ if (arcn-> name[arcn-> nlen - 1] == '/') arcn-> name[--arcn-> nlen] = '%bl0ck_qu0te%';
As you can see with hexdump -C of archives created by gtar, gtar is such a program. I do not feel like changing tar just to accomodate non-conforming programs.