master
text 26 lines 723 Bytes
Raw
1 #!/bin/sh
2
3 if [ "$#" -ne 1 ]; then
4 echo "usage: $0 <ipfs-path>..."
5 echo "output merkledag links in graphviz dot"
6 echo ""
7 echo "use it with dot:"
8 echo " $0 QmZPAMWUfLD95GsdorXt9hH7aVrarb2SuLDMVVe6gABYmx | dot -Tsvg"
9 echo " $0 QmZPAMWUfLD95GsdorXt9hH7aVrarb2SuLDMVVe6gABYmx | dot -Tpng"
10 echo " $0 QmZPAMWUfLD95GsdorXt9hH7aVrarb2SuLDMVVe6gABYmx | dot -Tpdf"
11 echo ""
12 exit 1
13 fi
14
15 src='<src> [fontsize=8 shape=box];'
16 dst='<dst> [fontsize=8 shape=box];'
17 edge='<src> -> <dst> [label="<linkname>"];'
18 fmt="$src
19 $dst
20 $edge"
21
22 echo "digraph {"
23 echo " graph [rankdir=LR];"
24 ipfs refs -r --format="$fmt" "$@" | awk '{ print "\t" $0 }'
25 # ipfs refs -r --format="$fmt" "$@" | awk '{ print "\t" $0 }' | unflatten -l3
26 echo "}"