sed $'s/ *\t/\t/' < file
removeria os espaços antes da primeira guia. Aqui assumindo um shell como ksh93, bash, zsh, mksh ou FreeBSD sh com suporte para $'...'
(que está programado para inclusão no número 8 da Especificação Single UNIX).
Algumas implementações sed
como o GNU sed
também reconhecem aquelas \t
diretamente:
sed 's/ *\t/\t/' file
Caso contrário, POSIXly, você pode fazer:
TAB=$(printf '\t')
sed "s/ *$TAB/$TAB/" file
Você também pode fazer o mesmo com awk
POSIXly:
awk '{sub(/ *\t/, "\t"); print}'