iindexgph2db.sh - gopher-lawn - The gopher lawn gopher directory project. Err bitreich.org 70 hgit clone git://bitreich.org/gopher-lawn/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/gopher-lawn/ URL:git://bitreich.org/gopher-lawn/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/gopher-lawn/ bitreich.org 70 1Log /scm/gopher-lawn/log.gph bitreich.org 70 1Files /scm/gopher-lawn/files.gph bitreich.org 70 1Refs /scm/gopher-lawn/refs.gph bitreich.org 70 1Tags /scm/gopher-lawn/tag bitreich.org 70 i--- Err bitreich.org 70 iindexgph2db.sh (2011B) Err bitreich.org 70 i--- Err bitreich.org 70 i 1 #!/bin/sh Err bitreich.org 70 i 2 Err bitreich.org 70 i 3 set -x Err bitreich.org 70 i 4 Err bitreich.org 70 i 5 if [ $# -gt 0 ]; Err bitreich.org 70 i 6 then Err bitreich.org 70 i 7 inputfile="$1" Err bitreich.org 70 i 8 else Err bitreich.org 70 i 9 inputfile="/dev/stdin" Err bitreich.org 70 i 10 fi Err bitreich.org 70 i 11 Err bitreich.org 70 i 12 printdbtmpl() { Err bitreich.org 70 i 13 linetype="$1" Err bitreich.org 70 i 14 linktext="$2" Err bitreich.org 70 i 15 selector="$3" Err bitreich.org 70 i 16 host="$4" Err bitreich.org 70 i 17 port="$5" Err bitreich.org 70 i 18 description="$6" Err bitreich.org 70 i 19 Err bitreich.org 70 i 20 case "${linetype}" in Err bitreich.org 70 i 21 0|H) Err bitreich.org 70 i 22 linetypetext="text" Err bitreich.org 70 i 23 ;; Err bitreich.org 70 i 24 1|h|w) Err bitreich.org 70 i 25 linetypetext="link" Err bitreich.org 70 i 26 ;; Err bitreich.org 70 i 27 2) Err bitreich.org 70 i 28 linetypetext="cso" Err bitreich.org 70 i 29 ;; Err bitreich.org 70 i 30 3|+|i) Err bitreich.org 70 i 31 linetypetext="error" Err bitreich.org 70 i 32 ;; Err bitreich.org 70 i 33 6) Err bitreich.org 70 i 34 linetypetext="uuencoded" Err bitreich.org 70 i 35 ;; Err bitreich.org 70 i 36 7) Err bitreich.org 70 i 37 linetypetext="search" Err bitreich.org 70 i 38 ;; Err bitreich.org 70 i 39 8|T) Err bitreich.org 70 i 40 linetypetext="telnet" Err bitreich.org 70 i 41 ;; Err bitreich.org 70 i 42 *) Err bitreich.org 70 i 43 linetypetext="binary" Err bitreich.org 70 i 44 ;; Err bitreich.org 70 i 45 esac Err bitreich.org 70 i 46 Err bitreich.org 70 i 47 tmplfile="$host-$(printf "%s\n" "${selector}" \ Err bitreich.org 70 i 48 | tr '/' '_').${linetypetext}" Err bitreich.org 70 i 49 Err bitreich.org 70 i 50 printf "Type: %s\n" "${linetypetext}" > "${tmplfile}" Err bitreich.org 70 i 51 printf "Selector: %s\n" "${selector}" >> "${tmplfile}" Err bitreich.org 70 i 52 printf "Host: %s\n" "${host}" >> "${tmplfile}" Err bitreich.org 70 i 53 printf "Port: %s\n" "${port}" >> "${tmplfile}" Err bitreich.org 70 i 54 printf "LinkName: %s\n" "${linktext}" >> "${tmplfile}" Err bitreich.org 70 i 55 printf "Description: %s\n" "${description}" >> "${tmplfile}" Err bitreich.org 70 i 56 printf "Category: \n" >> "${tmplfile}" Err bitreich.org 70 i 57 printf "Keywords: \n" >> "${tmplfile}" Err bitreich.org 70 i 58 } Err bitreich.org 70 i 59 Err bitreich.org 70 i 60 gphline="" Err bitreich.org 70 i 61 cat "${inputfile}" \ Err bitreich.org 70 i 62 | while read -r line; Err bitreich.org 70 i 63 do Err bitreich.org 70 i 64 if [ -z "${line}" ]; Err bitreich.org 70 i 65 then Err bitreich.org 70 i 66 if [ -n "${gphline}" ]; Err bitreich.org 70 i 67 then Err bitreich.org 70 i 68 case "${gphline}" in Err bitreich.org 70 i 69 '[1|<< back'*) Err bitreich.org 70 i 70 ;; Err bitreich.org 70 i 71 *) Err bitreich.org 70 i 72 linetype="$(printf "%s\n" "${gphline}" \ Err bitreich.org 70 i 73 | cut -d '[' -f 2 | cut -d '|' -f 1)"; Err bitreich.org 70 i 74 linktext="$(printf "%s\n" "${gphline}" \ Err bitreich.org 70 i 75 | cut -d '|' -f 2)"; Err bitreich.org 70 i 76 selector="$(printf "%s\n" "${gphline}" \ Err bitreich.org 70 i 77 | cut -d '|' -f 3)"; Err bitreich.org 70 i 78 host="$(printf "%s\n" "${gphline}" \ Err bitreich.org 70 i 79 | cut -d '|' -f 4)"; Err bitreich.org 70 i 80 port="$(printf "%s\n" "${gphline}" \ Err bitreich.org 70 i 81 | cut -d '|' -f 5 | cut -d ']' -f 1)"; Err bitreich.org 70 i 82 Err bitreich.org 70 i 83 printdbtmpl "${linetype}" "${linktext}" \ Err bitreich.org 70 i 84 "${selector}" "${host}" "${port}" \ Err bitreich.org 70 i 85 "${description}" Err bitreich.org 70 i 86 ;; Err bitreich.org 70 i 87 esac Err bitreich.org 70 i 88 fi Err bitreich.org 70 i 89 Err bitreich.org 70 i 90 gphline="" Err bitreich.org 70 i 91 description="" Err bitreich.org 70 i 92 continue; Err bitreich.org 70 i 93 fi Err bitreich.org 70 i 94 Err bitreich.org 70 i 95 case "${line}" in Err bitreich.org 70 i 96 \[*) Err bitreich.org 70 i 97 if [ -z "${gphline}" ]; Err bitreich.org 70 i 98 then Err bitreich.org 70 i 99 gphline="${line}" Err bitreich.org 70 i 100 continue; Err bitreich.org 70 i 101 fi Err bitreich.org 70 i 102 ;; Err bitreich.org 70 i 103 *) Err bitreich.org 70 i 104 if [ -n "${gphline}" ]; Err bitreich.org 70 i 105 then Err bitreich.org 70 i 106 if [ -z "${description}" ]; Err bitreich.org 70 i 107 then Err bitreich.org 70 i 108 description="${line}" Err bitreich.org 70 i 109 else Err bitreich.org 70 i 110 description="${description} ${line}" Err bitreich.org 70 i 111 fi Err bitreich.org 70 i 112 fi Err bitreich.org 70 i 113 continue; Err bitreich.org 70 i 114 ;; Err bitreich.org 70 i 115 esac Err bitreich.org 70 i 116 done Err bitreich.org 70 i 117 Err bitreich.org 70 .