Hallo allerseits: Jetzt habe ich ein Tomcat-Zugriffsprotokoll mit 3G-Bytes namens urls, jede Zeile ist eine URL. Ich möchte jede URL zählen und diese URLs nach der Anzahl der URLs sortieren. Ich habe es so gemacht:Wie wird eine 3G-Byte-Zugriffsprotokolldatei sortiert?
awk '{print $0}' urls | sort | uniq -c | sort -nr >> output
Aber es dauerte wirklich lange Zeit, um diesen Job zu beenden, es dauerte schon 30 Minuten und es funktioniert immer noch. Protokolldatei ist wie unten:
/open_api/borrow_business/get_apply_by_user
/open_api/borrow_business/get_apply_by_user
/open_api/borrow_business/get_apply_by_user
/open_api/borrow_business/get_apply_by_user
/loan/recent_apply_info?passportId=Y20151206000011745
/loan/recent_apply_info?passportId=Y20160331000000423
/open_api/borrow_business/get_apply_by_user
...
Gibt es eine andere Art und Weise, die ich verarbeiten konnte und sortieren ein 3G-Bytes-Datei? Danke im Voraus!
Wenn alles, was Sie eine Zählung jeder URL ist wollen, dann stehen die Chancen, dass man das Ganze ein Befehl tun können. Bearbeiten Sie Ihre Frage, um uns ein Beispiel Ihrer Protokolldatei und die gewünschte Ausgabe zu zeigen. –
Falls es wirklich der 'sort' Befehl selbst ist, der das Ganze verlangsamt, können Sie die' --parallel = N' Option versuchen – fab
Es wäre mir viel besser für Sie, das gleiche wie Klartext einzuschließen, anstatt ein Bildschirmfoto. Könntest du das machen? –