1
|
#!/bin/bash
|
2
|
# Filters import log files for their import times
|
3
|
# Usage: self {input...|<input} >filtered
|
4
|
|
5
|
sedEreFlag="$(test "$(uname)" = Darwin && echo E || echo r)"
|
6
|
|
7
|
sed () { "$(which sed)" -"$sedEreFlag" "$@";}
|
8
|
|
9
|
times ()
|
10
|
{
|
11
|
sed -n 's/^Took (.*) sec\/([^ ]*) row\(s\).*$/\2'$'\t''\1/p' "$@"
|
12
|
}
|
13
|
|
14
|
postprocessLogs=()
|
15
|
|
16
|
for log in "$@"; do
|
17
|
if test "${log/public./}" != "$log"; then
|
18
|
postprocessLogs[${#postprocessLogs[@]}]="$log"
|
19
|
else times "$log"
|
20
|
fi
|
21
|
done
|
22
|
|
23
|
echo
|
24
|
echo "Postprocessing logs:"
|
25
|
times "${postprocessLogs[@]}"
|