annotate graph_sed.sh @ 13:fe4ccf810364

some cleanups in sed-variant
author meillo@marmaro.de
date Sat, 09 Jun 2007 12:20:43 +0200
parents 3af263aed951
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
1 #!/bin/bash
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
2 #
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
3 # Autor: markus schnalke (prog.marmaro.de)
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
4 # Autor: Julian Forster (www.ProgMaschine.de.vu)
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
5 #
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
6
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
7
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
8 if [ $# -eq 1 ]; then
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
9 if [ $1 = '--version' ] ; then
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
10 echo 'Buddylistgrapher (sed)'
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
11 echo '======================'
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
12 echo 'version 0.1'
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
13 echo
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
14 echo 'by Julian Forster (http://progmaschine.de.vu)'
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
15 echo 'and Markus Schnalke (http://prog.marmaro.de)'
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
16 exit 0
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
17 elif [ $1 = '--help' ] ; then
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
18 echo 'Buddylistgrapher (sed)'
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
19 echo '======================'
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
20 echo
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
21 echo "usage: $0 <input.txt>"
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
22 echo
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
23 echo "The grapher generates output to stdout."
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
24 echo "This output is the input for the graphviz tools."
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
25 echo
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
26 echo "You can use it like this:"
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
27 echo "$0 input.txt | dot -Tpng > pic.png"
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
28 echo
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
29 echo "ToDo:"
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
30 echo "The program was written for one specific kind of input data,"
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
31 echo "so there is still some work to do to use it for general input."
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
32 exit 0
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
33 else
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
34
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
35 file=/tmp/`basename $0`-$$
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
36 file2=/tmp/`basename $0`-$$-2
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
37
13
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
38
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
39 # sed
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
40 sed -n -e "
4
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
41 /^Profil/{
13
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
42 s/Profil von: \(.\+\)/\"\1\";/
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
43 w $file
6
e34b27b544b5 completed sed variant
meillo@marmaro.de
parents: 4
diff changeset
44 s/;$//
4
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
45 h
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
46 #p
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
47 }
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
48
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
49
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
50 /^Nachricht/{
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
51 G
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
52 s/ - [-0-9]\+//
13
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
53 s/Nachricht schreiben \(.\+\)\n/\"\1\" /
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
54 s/\"\(.\+\)\" \"\(.\+\)\"/ \"\2\" -> \"\1\";/
4
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
55
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
56 # write out
6
e34b27b544b5 completed sed variant
meillo@marmaro.de
parents: 4
diff changeset
57 #p
13
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
58 w $file2
4
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
59 }
13
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
60 " $1
4
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
61
13
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
62 # output
6
e34b27b544b5 completed sed variant
meillo@marmaro.de
parents: 4
diff changeset
63 echo "digraph G {"
13
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
64 grep -f $file $file2
4
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
65 echo "}"
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
66
13
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
67 # cleanup
fe4ccf810364 some cleanups in sed-variant
meillo@marmaro.de
parents: 11
diff changeset
68 rm $file $file2
4
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
69 exit 0
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
70
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
71 fi
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
72 else
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
73 echo "usage: $0 <input.txt>"
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
74 exit 1
b82703cc3dd4 added sed edition but still incomplete
meillo@marmaro.de
parents:
diff changeset
75 fi