O primeiro comando aqui emula a formatação que você vê em vim
. Ele inteligentemente expande as guias para o número equivalente de espaços, com base em uma configuração tab-STOP (ts) de cada 4 colunas.
printf "ab\tcd\tde\n" |expand -t4
Saída
ab cd de
Para manter as abas como abas e ter a aba STOP posições definidas para cada 4ª coluna, então você deve mudar a maneira como o ambiente funciona com um tab-char (assim como o vim faz com o comando :set ts=4
)
Por exemplo, no terminal, você pode definir a guia STOP como 4 com este comando;
tabs 4; printf "ab\tcd\tde\n"
Saída
ab cd de