1#!/bin/sh 2# 3# $NetBSD$ 4# 5# Copyright (c) 2008 The NetBSD Foundation, Inc. 6# All rights reserved. 7# 8# This code is derived from software contributed to The NetBSD Foundation 9# by Luke Mewburn. 10# 11# Redistribution and use in source and binary forms, with or without 12# modification, are permitted provided that the following conditions 13# are met: 14# 1. Redistributions of source code must retain the above copyright 15# notice, this list of conditions and the following disclaimer. 16# 2. Redistributions in binary form must reproduce the above copyright 17# notice, this list of conditions and the following disclaimer in the 18# documentation and/or other materials provided with the distribution. 19# 20# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 21# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 22# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 23# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 24# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 25# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 26# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 27# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 28# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30# POSSIBILITY OF SUCH DAMAGE. 31# 32 33# set defaults 34# 35: ${TOOL_AWK=awk} 36: ${TOOL_DB=db} 37prog=${0##*/} 38 39usage() 40{ 41 cat 1>&2 << _USAGE_ 42Usage: ${prog} infile.txt outfile.db 43_USAGE_ 44 exit 1 45} 46 47[ $# -ne 2 ] && usage 48infile=$1 49outfile=$2 50 51${TOOL_AWK} < ${infile} ' 52 /^!/ { next; } 53 NF >= 4 { 54 printf "%s", tolower($4) 55 for (i = 5; i <= NF; i++) 56 printf "\\040%s", tolower($i) 57 printf " \\%03o\\%03o\\%03o\\%03o\\%03o\\%03o\n", 58 $1, $1, $2, $2, $3, $3 59 }' \ 60| ${TOOL_DB} -q -w -N -U b -f - hash ${outfile} 61