File: filter_xml

package info (click to toggle)
valgrind 1%3A3.2.1-1
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 27,372 kB
  • ctags: 23,091
  • sloc: ansic: 192,648; xml: 10,723; sh: 4,750; perl: 4,023; makefile: 2,103; asm: 1,813; cpp: 140; haskell: 139
file content (28 lines) | stat: -rwxr-xr-x 1,049 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#! /bin/sh

./filter_stderr |
sed "s/<tid>[0-9]*<\/tid>/<tid>...<\/tid>/" |
sed "s/<pid>[0-9]*<\/pid>/<pid>...<\/pid>/" |
sed "s/<ppid>[0-9]*<\/ppid>/<ppid>...<\/ppid>/" |
sed "s/<obj>.*<\/obj>/<obj>...<\/obj>/" |
sed "s/<line>.*<\/line>/<line>...<\/line>/" |
sed "s/<dir>.*<\/dir>/<dir>...<\/dir>/" |
sed "s/<count>.*<\/count>/<count>...<\/count>/" |
sed "s/\(m_replacemalloc\/\)\?vg_replace_malloc.c/vg_replace_malloc.c/" |
perl -0 -p -e "s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s" |
perl    -p -e "s/<time>.*<\/time>/<time>...<\/time>/s" |
perl -0 -p -e "s/<vargv>.*<\/vargv>/<vargv>...<\/vargv>/s"

# Collected wisdom re Perl magic incantation:
#
# From: Tom Hughes
#
# Two problems - one is that you need -p to force perl to loop over 
# the input lines and apply your expression to each one and then print
# the results.
# 
# The other is that as somebody else said you need to change the input
# record separator so that it reads in the whole file as a single line
# which you can do with the -0 switch.
#
# Hence -0 -p.