cum se imprimă caracterul citatului în awk

Am un fișier str.txt cu următoarele exemple de înregistrări.

31,2713810299,1,11-Aug-15 19:52:10 32,2713810833,1,11-Aug-15 21:36:18 

Acum vreau să imprim imprimarea cu awk ca mai jos.

cat str.txt|awk -F, "{print substr("$4",1,9)}" - 

Rezultatul ar trebui să fie :

"11-Aug-15" "11-Aug-15" 

Răspuns

un singur ghilimel ar fi \x27

awk -F, "{print "\x27"substr($4,1,9)"\x27" }" 

Comentarii

Răspuns

POSIXly:

awk -F"[ ,]" -v q=""" "{print q$4q}" <file 

Răspuns

O abordare ușor diferită, pentru POSIX Awk:

awk -F"[, ]" "{printf "\047%s\047\n", $4}" file "11-Aug-15" "11-Aug-15" 

Răspuns

Puteți utiliza comanda awk astfel:

cat str.txt|awk -F, "{print substr($4,1,9)}" - 

Pentru a obține următoarea ieșire:

11-Aug-15 11-Aug-15 

Dacă ghilimelele simple necesită la începutul și la sfârșitul liniilor, atunci:

cat str.txt|awk -F, "{printf "\047%s\047\n",substr($4,1,9)}" - 

Pentru a obține următoarea ieșire:

"11-Aug-15" "11-Aug-15" 

Comentarii

  • Niciunul sunt tipărite ghilimelele, pe care întrebarea le specifică …
  • @jasonwryan: Vă rugăm să verificați răspunsul actualizat conform cerințelor.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *