hogyan nyomtasson idézőjelet az awk fájlban

Van egy fájlom, str.txt, a következő mintarekordokkal.

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

Most az awk-val akarom kinyomtatni a kimenetet, az alábbiak szerint.

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

A kimenetet :

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

Válasz

egyetlen ajánlat \x27

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

megjegyzések

Válasz

POSIXly:

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

Válasz

Kissé eltérő megközelítés a POSIX Awk esetében:

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

Válasz

Használhatja az awk parancsot, mint ez:

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

A következő kimenet megszerzéséhez:

11-Aug-15 11-Aug-15 

Ha egyes idézőjelek szükségesek a sorok elején és végén, akkor:

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

A következő kimenet megszerzéséhez:

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

Hozzászólások

  • Nincs egyetlen idézetek kerülnek kinyomtatásra, amelyet a kérdés megad …
  • @jasonwryan: Kérjük, ellenőrizze a válasz frissítését a követelményeknek megfelelően.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük