Qual é a diferença entre print e printf no awk?

6

Em awk , qual é a diferença entre print e printf ?

Existe alguma restrição para usar apenas print em vez de printf e vice-versa

    
por Ravan 06.11.2015 / 03:54

2 respostas

7

Como o GNU awk (o manual do gawk diz) no link

Use the print statement to produce output with simple, standardized formatting. You specify only the strings or numbers to print, in a list separated by commas. They are output, separated by single spaces, followed by a newline.

& etc.

For more precise control over the output format than what is provided by print, use printf. With printf you can specify the width to use for each item, as well as various formatting choices for numbers (such as what output base to use, whether to print an exponent, whether to print a sign, and how many digits to print after the decimal point).

Então, isso praticamente explica as diferenças e restrições.

    
por 06.11.2015 / 04:09
4

imprimir :

  • "Imprimir" por si só imprime a linha de entrada.
  • "Imprimir" com um argumento imprime o argumento.
  • "Imprimir" com vários argumentos imprime todos os argumentos, separados por espaços (ou outros OFS especificados) quando os argumentos são separados por vírgulas ou concatenados quando os argumentos são separados por espaços.

printf :

A função "printf ()" (formatted print) é muito mais flexível e mais complicada. Tem a sintaxe:

 printf(<string>,<expression list>)

Diferença :

A diferença entre printf e print é o argumento format. Esta é uma expressão cujo valor é tomado como uma string; especifica como produzir cada um dos outros argumentos. É chamado de string de formato.

Referências aqui e aqui

    
por 06.11.2015 / 05:32

Tags