Actuellement, j'exécute une commande comme celle-ci, pour obtenir le contenu le plus demandé:
grep "17\/Jul\/2011" other_vhosts_access.log | awk '{print $8}' | sort | uniq -c | sort -nr
Je veux maintenant voir les chaînes d'agent utilisateur, mais le problème est qu'elles incluent plusieurs espaces. Voici une ligne de fichier journal typique. L'UA est la dernière section délimitée par des guillemets:
example.com:80 [ip] - - [17/Jul/2011:23:59:59 +0100] "GET [url] HTTP/1.1" 200 6449 "[referer]" "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.122 Safari/534.30"
Existe-t-il un meilleur outil que awk pour cela?