Por padrão, o gawk preenche o conteúdo no comprimento especificado com o caractere de espaço:
root@u2004:~# awk 'BEGIN{printf("|%+5s|\n", "abc")}'
| abc|
root@u2004:~#
É possível especificar um caractere de preenchimento personalizado? Por exemplo, como posso obter |__abc|
?
Não, isso não vai funcionar.
gawk
usa aprintf
função que não suporta outros caracteres de preenchimento de acordo com esta referência:https://bytes.com/topic/c/answers/219695-printf-padding-alternate-character
Não diretamente, mas usando GNU awk para
gensub
e assumindo que você não tenha outros espaços em branco em sua string para serem impressos ("abc"
neste caso):ou usando qualquer awk se sua string contém espaços em branco ou não:
ou: