usando o comando do sistema no script awk

4

Em um script AWK, estou usando um comando

   system(date)

para imprimir a data atual em um arquivo, mas depois que este comando é executado, a próxima linha também é adicionada implicitamente. Existe alguma maneira no AWK para imprimir a data atual sem a nova linha ser adicionada para que o que eu imprimir em seguida venha na mesma linha?

    
por nishan 06.05.2011 / 20:36

1 resposta

2

O comando date adiciona uma nova linha no final de sua saída. Você pode ler a saída no awk e imprimir sem acrescentar uma nova linha.

"date" | getline date; printf "%s", date

A menos que seu script seja de longa duração, você pode obter a data em que inicia seu script.

awk -v date="$(date)" '
    … printf "%s", date …
'
    
por 06.05.2011 / 20:59